vue+swiper实现组件化开发的实例代码


Posted in Javascript onOctober 26, 2017

swiper的组件

<template>
  <div class="swiper-container">
    <div class="swiper-wrapper">
      <div class="swiper-slide" v-for="item in swiper"><img :src="item.room_src" alt=""></div>
      <!--<div class="swiper-slide" v-for="item in test"><img :src="item.room_src" alt=""></div>-->
    </div>
  </div>
</template>
<script>
 import Swiper from 'swiper'
 export default {
  name: 'swiper',
  data() {
   return {
    mySwiper: null,
//    test: [
//     "https://rpic.douyucdn.cn/acrpic/171024/288016_0921.jpg",
//     "https://rpic.douyucdn.cn/acrpic/171024/748396_0924.jpg",
//     "https://rpic.douyucdn.cn/acrpic/171024/453751_0922.jpg",
//     "https://rpic.douyucdn.cn/acrpic/171024/79663_0920.jpg"
//    ]
   }
  },
  props: ['swiper'], //swiper的就是test这个数据传递来的
  methods: {
   _initSwiper() {
    this.mySwiper = new Swiper('.swiper-container', {
     autoplay: 5000,//可选选项,自动滑动
    })
   },
   _updateSwiper() {
    this.$nextTick(() => {
     this.mySwiper.update(true); //swiper update的方法
    })
   },
   swiperUpdate() {
    if (this.mySwiper) { //节点存在
     this._updateSwiper(); //更新
    } else {
     this._initSwiper(); //创建
    }
   },
  },
  watch: {
   //通过props传来的数据 和 组件一加载节点就创建成功 二者不是同步,实时监听的swiper(传递的值)的变化
   swiper() {
    this.swiperUpdate();
   }
  },
  mounted() {
   this.swiperUpdate(); //页面一加载拉去数据创建节点
  }
 }
</script>
<style lang="scss" scoped>
  .swiper-container {
    width: 100%;
    height: 4rem;
    margin-top: 0.9rem;
    .swiper-wrapper {
      width: 100%;
      height: 100%;
      .swiper-slide {
        background-size: cover;
        width: 100%;
        height: 4rem;
        img {
          width: 100%;
          height: 100%;
        }
      }
    }
  }
</style>

home.vue 调用的组件方法

//html
  <swiper :swiper="roomList.slice(6,10)" ></swiper>
//js
 import swiper from 'components/swiper/swiper'
 components: {
   swiper
  },

问题:如果单纯的调用_initSwiper的方法,会发现页面是不能滚动的,但是页面随便修改东西,然后保存的swiper又可以滚动的,这个个原因是初始swiper的节点没有创建成功,值页面有穿进去的,一层一层的可以打印swiper的值为空的,当修改东西值就能传递进去的,所以的这里的我们需要通过判断节点是否成功来update siwper的方法

Javascript 相关文章推荐
IE与firefox之jquery用法区别
Oct 03 Javascript
jQuery移除元素自动解绑事件实现思路及代码
May 31 Javascript
jquery中$(#form :input)与$(#form input)的区别
Aug 18 Javascript
微信企业号开发之微信考勤Cookies的使用
Sep 11 Javascript
IOS中safari下的select下拉菜单文字过长不换行的解决方法
Sep 26 Javascript
JavaScript提高加载和执行效率的方法
Feb 03 Javascript
div中文字内容溢出常见的解决方法
Mar 16 Javascript
关于jQuery中fade(),show()起始位置的一点小发现
Apr 25 jQuery
React-Native做一个文本输入框组件的实现代码
Aug 10 Javascript
js排序与重组的实例讲解
Aug 28 Javascript
微信小程序实现给嵌套template模板传递数据的方式总结
Dec 18 Javascript
JS实现鼠标按下拖拽效果
Jul 23 Javascript
canvas+gif.js打造自己的数字雨头像的示例代码
Oct 26 #Javascript
使用Bootrap和Vue实现仿百度搜索功能
Oct 26 #Javascript
Vue利用路由钩子token过期后跳转到登录页的实例
Oct 26 #Javascript
vue路由跳转时判断用户是否登录功能的实现
Oct 26 #Javascript
webpack3之loader全解析
Oct 26 #Javascript
JS使用正则表达式找出最长连续子串长度
Oct 26 #Javascript
AngularJS实现的输入框字数限制提醒功能示例
Oct 26 #Javascript
You might like
杏林同学录(四)
2006/10/09 PHP
php数组函数序列之array_flip() 将数组键名与值对调
2011/11/07 PHP
php读取目录所有文件信息dir示例
2014/03/18 PHP
WordPress的主题编写中获取头部模板和底部模板
2015/12/28 PHP
实现PHP搜索加分页
2016/10/12 PHP
解决laravel中日志权限莫名变成了root的问题
2019/10/17 PHP
HTML TO JavaScript 转换
2006/06/26 Javascript
Labelauty?jQuery单选框/复选框美化插件分享
2015/09/26 Javascript
JS获取子窗口中返回的数据实现方法
2016/05/28 Javascript
JavaScript满天星导航栏实现方法
2018/03/08 Javascript
浅谈ng-zorro使用心得
2018/12/03 Javascript
Vue-cli3简单使用(图文步骤)
2019/04/30 Javascript
layui下拉列表select实现可输入查找的方法
2019/09/28 Javascript
Vue.js组件使用props传递数据的方法
2019/10/19 Javascript
VUE实时监听元素距离顶部高度的操作
2020/07/29 Javascript
用js实现放大镜效果
2020/10/28 Javascript
python多重继承新算法C3介绍
2014/09/28 Python
浅析Python中的序列化存储的方法
2015/04/28 Python
python+matplotlib绘制3D条形图实例代码
2018/01/17 Python
Python数据分析之双色球统计两个红和蓝球哪组合比例高的方法
2018/02/03 Python
面向初学者的Python编辑器Mu
2018/10/08 Python
Python 安装第三方库 pip install 安装慢安装不上的解决办法
2019/06/18 Python
基于sklearn实现Bagging算法(python)
2019/07/11 Python
python实现电子书翻页小程序
2019/07/23 Python
Python requests模块基础使用方法实例及高级应用(自动登陆,抓取网页源码)实例详解
2020/02/14 Python
信号生成及DFT的python实现方式
2020/02/25 Python
MATCHESFASHION澳大利亚/亚太地区:英国时尚奢侈品电商
2020/01/14 全球购物
教师专业理论水平的自我评价分享
2013/11/09 职场文书
美德好少年主要事迹
2014/01/29 职场文书
领导班子群众路线与四风问题对照检查材料思想汇报
2014/10/11 职场文书
离婚协议书范文2014
2014/10/16 职场文书
2014年银行信贷员工作总结
2014/12/08 职场文书
小学英语教师2015年度个人工作总结
2015/10/14 职场文书
2016年春季运动会通讯稿
2015/11/25 职场文书
《鸡兔同笼》教学反思
2016/02/19 职场文书
php7中停止php-fpm服务的方法详解
2021/05/09 PHP