使用vue-infinite-scroll实现无限滚动效果
2018-06-22 13:40
1176 查看
vue-infinite-scroll插件可以无限滚动实现加载更多,其作用是是当滚动条滚动到距离底部的指定高度时触发某个方法。
https://github.com/ElemeFE/vue-infinite-scroll/
https://www.npmjs.com/package/vue-infinite-scroll
npm i vue-infinite-scroll --save
main.js使用
import vueiInfinite from 'vue-infinite-scroll' Vue.use(vueiInfinite) <div v-infinite-scroll="loadMore" infinite-scroll-disabled="busy" infinite-scroll-distance="10"> <div class="loading">加载中...</div> </div>
1.loadMore是方法,里面是要执行的代码
2.busy的值是true的时候,就不再加载,如果是false就执行加载
3.10表示距离底部为10 的时候就执行loadMore方法
loadMore () { this.busy = true //把busy置位true,这次请求结束前不再执行 setTimeout(() => { this.page++ this.getGoodLists(true) //调用获取数据接口,并且传入一个true,让axios方法指导是否需要拼接数组。 }, 500) } getGoodLists (flag) { var param = { page: this.page, pageSize: this.pageSize, sort: this.sortFlag ? 1 : -1 } axios.get('/goods', {params: param}).then((response) => { let res = response.data if (flag) { this.goodList = this.goodList.concat(res.result.list) //如果是flagtrue,则拼接数组。 if (res.result.count === 0) { this.busy = true } else { this.busy = false } } else { this.goodList = res.result.list this.busy = false 第一次进来的时候,把busy置位false。执行loadMore的方法 } }) },
总结
以上所述是小编给大家介绍的使用vue-infinite-scroll实现无限滚动效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
相关文章推荐
- 使用ScrollView实现滚动效果 出现 ScrollView can host only one direct child (ScrollView只能包裹一个直接子元素)
- 【无限滚动加载数据】—infinite-scroll插件的使用
- 使用Swift实现iOScollectionView广告无限滚动效果(DEMO)
- better-scroll在vue中实现原生滚动和上拉/下拉加载的效果
- vue实现横向滚动效果(better-scroll)
- 【无限滚动加载数据】—infinite-scroll插件的使用
- 【无限滚动加载数据】—infinite-scroll插件的使用
- 使用 HorizontalScrollView 实现水平滚动,并点击有相应的反应效果
- 小白入门---Vue无限滚动(vue-infinite-scroll)
- vue使用mint-ui实现下拉刷新和无限滚动的示例代码
- infinite-scroll插件无限滚动加载数据的使用
- [配置]vue无限滚动vue-infinite-scroll的配置
- vue使用Better-Scroll实现纵向滚动
- 使用infinite-scroll实现Ghost博文列表的滚动加载
- 【无限滚动加载数据】—infinite-scroll插件的使用---------下拉加载数据、无线滚动
- 使用UILabel实现滚动字幕移动效果
- 使用Scoller类实现平滑滚动效果
- 使用JQuery.slideBox实现图片滚动效果
- 使用HorizontalScrollView实现水平控件拖动效果
- One Page Scroll – 实现苹果风格的单页滚动效果