解决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 相关文章推荐
利用jQuery接受和处理xml数据的代码(.net)
Mar 28 Javascript
jQuery中:visible选择器用法实例
Dec 30 Javascript
Javascript优化技巧之短路表达式详细介绍
Mar 27 Javascript
js调用百度地图及调用百度地图的搜索功能
Sep 07 Javascript
详解前端路由实现与react-router使用姿势
Aug 07 Javascript
vue2.0 + element UI 中 el-table 数据导出Excel的方法
Mar 02 Javascript
Postman模拟发送带token的请求方法
Mar 31 Javascript
vue中的自定义分页插件组件的示例
Aug 18 Javascript
Vue 动态组件与 v-once 指令的实现
Feb 12 Javascript
详解Nuxt.js中使用Element-UI填坑
Sep 06 Javascript
vue 开发之路由配置方法详解
Dec 02 Javascript
使用原生JS实现火锅点餐小程序(面向对象思想)
Dec 10 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
mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array
2007/01/15 PHP
php开发工具之vs2005图解
2008/01/12 PHP
php重定向的三种方法分享
2012/02/22 PHP
PHP与javascript实现变量交互的示例代码
2013/07/23 PHP
php实现图形显示Ip地址的代码及注释
2014/01/20 PHP
jquery Moblie入门—hello world的示例代码学习
2013/01/08 Javascript
javascript使用isNaN()函数判断变量是否为数字
2013/09/21 Javascript
JS中的log对象获取以及debug的写法介绍
2014/03/03 Javascript
使用CSS3的scale实现网页整体缩放
2014/03/18 Javascript
瀑布流布局代码一例
2014/04/11 Javascript
使用Chrome调试JavaScript的断点设置和调试技巧
2014/12/16 Javascript
knockoutjs动态加载外部的file作为component中的template数据源的实现方法
2016/09/01 Javascript
详解JavaScript权威指南之对象
2016/09/27 Javascript
Bootstrap CSS布局之列表
2016/12/15 Javascript
js实现时间轴自动排列效果
2017/03/09 Javascript
Bootstrap 过渡效果Transition 模态框(Modal)
2017/03/17 Javascript
JS实现简易的图片拖拽排序实例代码
2017/06/09 Javascript
JS中的事件委托实例浅析
2018/03/22 Javascript
详解Python中的序列化与反序列化的使用
2015/06/30 Python
python 容器总结整理
2017/04/04 Python
pandas带有重复索引操作方法
2018/06/08 Python
python中单下划线_的常见用法总结
2018/07/10 Python
使用Python制作自动推送微信消息提醒的备忘录功能
2018/09/06 Python
win10 64bit下python NLTK安装教程
2018/09/19 Python
Opencv+Python 色彩通道拆分及合并的示例
2018/12/08 Python
Python实现繁体中文与简体中文相互转换的方法示例
2018/12/18 Python
Python中调用其他程序的方式详解
2019/08/06 Python
python修改linux中文件(文件夹)的权限属性操作
2020/03/05 Python
python实现暗通道去雾算法的示例
2020/09/27 Python
IRO美国官网:法国服装品牌
2018/03/06 全球购物
介绍一下HDLC(High-Level Data Link Control)高层数据链路协议
2012/01/21 面试题
工程造价自荐信
2013/10/09 职场文书
汽车专业人才自我鉴定范文
2013/12/29 职场文书
四风对照检查材料思想汇报
2014/09/20 职场文书
施工安全协议书
2016/03/22 职场文书
MySQL为id选择合适的数据类型
2021/06/07 MySQL