解决Vue使用mint-ui loadmore实现上拉加载与下拉刷新出现一个页面使用多个上拉加载后冲突问题


Posted in Javascript onNovember 07, 2017

所遇问题:

该页面为双选项卡联动,四个部分都需要上拉加载和下拉刷新功能,使用的mint-ui的loadmore插件,分别加上上拉加载后,只有最后一个的this.$refs.loadmore.onTopLoaded();this.$refs.loadmore.onBottomLoaded();

有效,其他的三个都无效,这两句话是意思是查询完要调用一次,用于重新定位 

解决Vue使用mint-ui loadmore实现上拉加载与下拉刷新出现一个页面使用多个上拉加载后冲突问题

分析原因:

首先这四个模块都是用的

 

<mt-loadmore :top-method="loadTop"
     :bottom-method="loadBottom"
     :bottom-all-loaded="allLoaded"
     ref="loadmore">
     <ul class="ul-box">
     <li class="list-cell ta-line" v-for="(item,index) in gridNoPayMail" :key="item+'walletdetail1'" @click="choose(index)">
      <div class="checkboxOne">
      <input type="checkbox" name="checkInput" :id="'id1' + index" v-model="item.checked" disabled/>
      <label :for="'id1' + index"></label>
      </div>
      <div class="left-text">
      <p class="award">{{item.a}}</p>
      <p class="time">{{item.b}}</p>
      </div>
      <div class="right-text">
      <p class="addinfo">¥{{item.c}}</p>
      </div>
     </li>
     </ul>
    </mt-loadmore>

top-method和bottom-method,bottom-all-loaded分别赋予不同的事件名,前两个事件分别表示下拉,上拉,第三个若为真,则 bottomMethod 不会被再次触发,一般进入页面我们默认为false

调用接口成功后进行的取消加载的判断,这里可以给接口的方法一个type值,如果type为top1时则证明正在进行的是下拉刷新执行this.$refs.loadmore1.onTopLoaded();,上拉加载同理,其他三个模块同理

if(type=='top1'){
   this.$refs.loadmore1.onTopLoaded();
   }else if(type=='bottom1'){ 
this.$refs.loadmore1.onBottomLoaded();
}

到了这里就会出现开始所描述问题,

解决方法

一开始做了很多尝试,比如利用v-if当一个模块显示时让其他三个隐藏,总是会出现不同的问题,后来将ref="loadmore"中ref后的参数在四个模块中做了区分比如分别为loadmore1,loadmore2……,这里我是这样理解的,ref 在此的作用为子组件指定一个索引 ID,类似于dom元素的id,id名不能相同,所以我们将ref修改为不同的参数,问题解决,

 附Vue官网链接https://vuejs.org/

mint-ui:https://mint-ui.github.io/docs/#/en2/loadmore

PS:mint-ui loadmore组件注意问题

loadTop(){
    this.$store.dispatch('getNewsList',{channelId:this.id,page:0,size:this.size});
    this.$refs.loadmore.onTopLoaded();
},

比如在做下拉刷新的时候,切记在下拉刷新的函数中要加

this.$refs.loadmore.onTopLoaded();

这行代码,否则下拉加载之后一直显示加载中,而不会加载完成。

总结

以上所述是小编给大家介绍的Vue使用mint-ui loadmore实现上拉加载与下拉刷新出现一个页面使用多个上拉加载后冲突问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Javascript实例教程(19) 使用HoTMetal(5)
Dec 23 Javascript
原生js仿jq判断当前浏览器是否为ie,精确到ie6~8
Aug 30 Javascript
Jquery $.getJSON 在IE下的缓存问题解决方法
Oct 10 Javascript
JS从一组数据中找到指定的单条数据的方法
Jun 02 Javascript
简单几步实现返回顶部效果
Dec 05 Javascript
JS定时检测任务任务完成后执行下一步的解决办法
Dec 22 Javascript
bootstrap modal+gridview实现弹出框效果
Aug 15 Javascript
Vue cli+mui 区域滚动的实例代码
Jan 25 Javascript
微信小程序实现底部导航
Nov 05 Javascript
微信小程序地图导航功能实现完整源代码附效果图(推荐)
Apr 28 Javascript
js String.prototype.trim字符去前后空格的扩展
Aug 23 Javascript
js代码实现轮播图
May 04 Javascript
vue组件间通信子与父详解(二)
Nov 07 #Javascript
原生JS实现 MUI导航栏透明渐变效果
Nov 07 #Javascript
mongoose设置unique不生效问题的解决及如何移除unique的限制
Nov 07 #Javascript
vue组件父与子通信详解(一)
Nov 07 #Javascript
vue组件父子间通信之综合练习(聊天室)
Nov 07 #Javascript
Mint UI 基于 Vue.js 移动端组件库
Nov 07 #Javascript
vue中SPA单页面应用程序详解
Nov 07 #Javascript
You might like
php实现利用phpexcel导出数据
2013/08/24 PHP
Yii调试查看执行SQL语句的方法
2016/07/15 PHP
php使用ftp实现文件上传与下载功能
2017/07/21 PHP
CI框架(CodeIgniter)公共模型类定义与用法示例
2017/08/10 PHP
详解PHP神奇又有用的Trait
2019/03/25 PHP
IE6图片加载的一个BUG解决方法
2010/07/13 Javascript
JavaScript实现页面滚动图片加载(仿lazyload效果)
2011/07/22 Javascript
AngularJS 获取ng-repeat动态生成的ng-model值实例详解
2016/11/29 Javascript
初探nodeJS
2017/01/24 NodeJs
你真的了解BOM中的history对象吗
2017/02/13 Javascript
DOM事件探秘篇
2017/02/15 Javascript
微信小程序 跳转传参数与传对象详解及实例代码
2017/03/14 Javascript
Nodejs基于LRU算法实现的缓存处理操作示例
2017/03/17 NodeJs
vue.js父子组件通信动态绑定的实例
2018/09/28 Javascript
vue 重塑数组之修改数组指定index的值操作
2020/08/09 Javascript
Angular处理未可知异常错误的方法详解
2021/01/17 Javascript
详解Python pygame安装过程笔记
2017/06/05 Python
利用python操作SQLite数据库及文件操作详解
2017/09/22 Python
基于python实现在excel中读取与生成随机数写入excel中
2018/01/04 Python
使用Python设计一个代码统计工具
2018/04/04 Python
Python实现字符串的逆序 C++字符串逆序算法
2020/05/28 Python
解决Pycharm无法import自己安装的第三方module问题
2018/05/18 Python
解决Mac下首次安装pycharm无project interpreter的问题
2018/10/29 Python
Python实现FM算法解析
2019/06/18 Python
Tensorflow实现酸奶销量预测分析
2019/07/19 Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
2019/12/20 Python
基于Python和C++实现删除链表的节点
2020/07/06 Python
HTML5 Canvas实现玫瑰曲线和心形图案的代码实例
2014/04/10 HTML / CSS
销售业务实习自我鉴定
2013/09/23 职场文书
音乐器材管理制度
2014/01/31 职场文书
事务机电主管工作职责
2014/02/25 职场文书
工地安全标语
2014/06/07 职场文书
党员反对四风思想汇报范文
2014/10/25 职场文书
红与黑读书笔记
2015/06/29 职场文书