我使用的是mui+vue,社区关于轮播图失效的问题也有几个。我这边遇到的一个情况是我把所有的东西都写到plusReady事件中会导致轮播图搞死都不动,按照其他问答解决了vue生命周期等等的问题。提出来写没问题。放进去有不动了。

mui.plusReady(function() {
//很多代码
});

结果在mui.js中看到mui会自动初始化轮播图。把这句注释掉就可以动了。

mui.js第5088行

//$('.mui-slider').slider();
        //MUI框架初始化
mui.init({});
//HTML5+API准备就绪
mui.plusReady(function() {
var pageModel = new Vue({
//插值符号
delimiters: ['{#', '#}'],
//绑定节点
el: '#vue-page',
//数据定义
data: {
//轮播图列表[此处仅定义数据结构]
sliderLists: [{
title: '', //幻灯片标题
url: '', //幻灯片链接地址
image: '' //幻灯片图片地址
}]
},
//方法定义
methods: {
},
//前置操作
mounted: function() {
/**
* 赋值轮播图
* 1.先从本地缓存读取尽快呈现页面
* 2.如服务器有更新则后台下载更新
*/
//获取本地存储
var sliderLists = plus.storage.getItem('sliderLists');
if(sliderLists) {
//调试
console.log(sliderLists); } else { //使用默认数据
this.sliderLists = [{
title: '',
url: '',
image: '../static/image/slider-01.jpg'
}, {
title: '',
url: '',
image: '../static/image/slider-02.jpg'
}, {
title: '',
url: '',
image: '../static/image/slider-03.jpg'
}, {
title: '',
url: '',
image: '../static/image/slider-04.jpg'
}];
}
},
//更新
updated: function() {
mui('#slider').slider({
interval: 3000 //自动播放周期
});
}
});
});

解决方案:

    而nextTick 主动渲染 Dom后,是无法获取到 mui(#slider)对象的。

mui("#slider").slider({
interval: 3000
});

在 Vue的生命周期钩子:updated 中 执行 代码如下:

updated: function() {
var sliderMuiObj = mui("#slider");
sliderMuiObj.slider({
interval: 3000
});
},

最后提供一个案例演示:【点击下载

使用Vue-MUI轮播图失效问题解决案例(在Vue的update中执行)的更多相关文章

  1. vue+mui轮播图

    mui的轮播图,如果图片是请求来的,直接在html中循环是不会动的. 需要请求完图片之后,在setTimeout方法里,使用slider()方法,这样才会动 而且mui的轮播图,有点坑的,需要重复最后 ...

  2. mui轮播图为什么设置了自动播放参数也不能自动播放呢?

    最近在做项目的时候,发现Mui的轮播图遇到个问题,设置了自动播放但是怎么也不能自动播放,这是为什么呢? 原来如果动态给mui的图片轮播添加图片,又使用的ajax获取的数据,但是你ajax 还没有执行完 ...

  3. vue自定义轮播图组件 swiper

    1.banner 组件 components/Banner.vue <!-- 轮播图 组件 --> <template> <div class="swiper- ...

  4. mui轮播图

    轮播组件是mui提供的一个核心组件,在该核心组件基础上,衍生出了图片轮播.可拖动式图文表格.可拖动式选项卡.左右滑动9宫格等组件,这些组件有较多共同点.Dom构造: <div class=&qu ...

  5. vue项目轮播图的实现

    利用   Vue-Awesome-Swiper插件来做轮播效果,github地址:https://github.com/surmon-china/vue-awesome-swiper 安装 npm i ...

  6. vue简易轮播图

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. 两个页面实现mui轮播图与选项卡结合

    index.html页面 <!DOCTYPE html><html><head> <meta charset="utf-8"> &l ...

  8. vue实现轮播图

    /* Start  基本样式*/ * {   margin: 0;   padding: 0; } ul {   list-style-type: none; } body {   font-size ...

  9. vue编写轮播图组件

    <template>  <div id="slider">    <div class="window" @mouseover=& ...

随机推荐

  1. 将String类型的json数据转换为真正的json数据

    问题 在做JavaWeb项目的时候,我们经常需要将Java对象转化为Json数据格式响应到前台页面,但是转化完成之后,看着是Json类型的数据格式,但实际上是字符串类型,在这里说两个方法将String ...

  2. Sikerio --《只狼》

    “狼啊,替我断绝不死吧”

  3. vue自定义插件

    1.新建js文件 utils.js,自定义方法 let local = { say() { console.log('我是插件里面自定义的方法') } } export default { insta ...

  4. Django---Django返回用户输入数据

    前面写了关于HTML和Django结合的文章,通过视图与HTML结合,然后加上urls渲染返回给用户浏览器.很明显我们都能看到这些仅仅是静态HTML,那如何通过Django创建动态的HTML呢? 动态 ...

  5. 作业day2

    问题一: Java类中只能有一个公有类吗?用Eclipse检测以下程序是否正确.是否在接口中同样适用. 因为公共类名必须和这个java源程序文件名相同,所以只能有一个公共类,相应的,main方法作为程 ...

  6. 悲催的二柱子们做小学二年级四则运算题(Javaweb)

    <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding= ...

  7. Java课后总结-原码、补码、反码

    1.原码.补码.反码的定义和表示方法. 数在计算机中是以二进制形式表示的. 数分为有符号数和无符号数. 原码.反码.补码都是有符号定点数的表示方法. 一个有符号定点数的最高位为符号位,0是正,1是副. ...

  8. hdu 1007 Quoit Design(平面最近点对)

    题意:求平面最近点对之间的距离 解:首先可以想到枚举的方法,枚举i,枚举j算点i和点j之间的距离,时间复杂度O(n2). 如果采用分治的思想,如果我们知道左半边点对答案d1,和右半边点的答案d2,如何 ...

  9. SQL Server Varchar 中文乱码问题与使用SQL Server Management Studio管理软件查询出来的字段限制

    问题:不管是用varchar 还是nvarchar,插入记录为中文时,都会显示乱码?? 即使建表时指明了某个字段的语言也没用 COLLATE Chinese_PRC_CS_AS_WS 原因:可能是安装 ...

  10. Selenium3+python自动化016-多线程

    1.进程 什么是进程? 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.在早期面向进程设计的计算机结构中,进程是程序的基 ...