解决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 相关文章推荐
AngularJS 表达式详细讲解及实例代码
Jul 26 Javascript
详解vue.js2.0父组件点击触发子组件方法
May 10 Javascript
vue.js中父组件调用子组件的内部方法示例
Oct 22 Javascript
jQuery实现页码跳转式动态数据分页
Dec 31 jQuery
去掉vue 中的代码规范检测两种方法(Eslint验证)
Mar 21 Javascript
Vue 实现树形视图数据功能
May 07 Javascript
详解React+Koa实现服务端渲染(SSR)
May 23 Javascript
vue服务端渲染缓存应用详解
Sep 12 Javascript
微信小程序实现页面下拉刷新和上拉加载功能详解
Dec 03 Javascript
解决echarts的多个折现数据出现坐标和值对不上的问题
Dec 28 Javascript
JavaScript继承与聚合实例详解
Jan 22 Javascript
详解mpvue实现对苹果X安全区域的适配
Jul 31 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学习 函数 课件
2008/06/15 PHP
preg_match_all使用心得分享
2014/01/31 PHP
Laravel 自定命令以及生成文件的例子
2019/10/23 PHP
json 入门基础教程 推荐
2009/10/31 Javascript
基于jQuery的Tab选项框效果代码(插件)
2011/03/01 Javascript
JS判断页面加载状态以及添加遮罩和缓冲动画的代码
2012/10/11 Javascript
jquery zTree异步加载简单实例分享
2013/02/05 Javascript
jQuery使用andSelf()来包含之前的选择集
2014/05/19 Javascript
JavaScript立即执行函数的三种不同写法
2014/09/05 Javascript
Javascript 是你的高阶函数(高级应用)
2015/06/15 Javascript
jquery-tips悬浮提示插件分享
2015/07/31 Javascript
如何解决easyui自定义标签 datagrid edit combobox 手动输入保存不上
2015/12/26 Javascript
基于jquery编写的放大镜插件
2016/03/23 Javascript
详解axios在vue中的简单配置与使用
2017/05/10 Javascript
nginx+vue.js实现前后端分离的示例代码
2018/02/12 Javascript
jQuery实现的鼠标拖动画矩形框示例【可兼容IE8】
2019/05/17 jQuery
jQuery 图片查看器插件 Viewer.js用法简单示例
2020/04/04 jQuery
解决vue组件销毁之后计时器继续执行的问题
2020/07/21 Javascript
js实现跳一跳小游戏
2020/07/31 Javascript
Vue axios获取token临时令牌封装案例
2020/09/11 Javascript
js用正则表达式筛选年月日的实例方法
2021/01/04 Javascript
Python简单实现Base64编码和解码的方法
2017/04/29 Python
Pytorch保存模型用于测试和用于继续训练的区别详解
2020/01/10 Python
filter使用python3代码进行迭代元素的实例详解
2020/12/03 Python
墨西哥运动服饰和鞋网上商店:Netshoes墨西哥
2016/07/28 全球购物
班级聚会策划书
2014/01/16 职场文书
《威尼斯的小艇》教学反思
2014/02/17 职场文书
团委书记的竞聘演讲稿
2014/04/24 职场文书
法院干警四风问题个人对照检查材料思想汇报
2014/10/07 职场文书
元旦标语大全
2014/10/09 职场文书
门面房租房协议书
2014/12/01 职场文书
2016保送生自荐信范文
2016/01/29 职场文书
Django展示可视化图表的多种方式
2021/04/08 Python
Mysql中调试存储过程最简单的方法
2021/06/30 MySQL
为什么MySQL8新特性会修改自增主键属性
2022/04/18 MySQL
HTML5之高度塌陷问题的解决
2022/06/01 HTML / CSS