vue-scrolllist
v1.0.7
Published
vuejs 下拉翻页组件
Downloads
4
Maintainers
Readme
vue-scrolllist
Vue 手机端下拉刷新(翻页)组件,页面下拉 -> 触底 -> 请求Api -> 刷新视图。建议es6语法; 当翻页到最后一页时滚动停止请求接口
一、安装
cd to you project
npm install vue-scrolllist
二、使用
example.vue
<template>
<div>
<scrolllist :scrollaction="getProducts" :currentpage="currentpage" :pagesize="size" :totalsize="totalElements">
<div slot="list">
<div v-for="el in productslist">
bala bala ...
</div>
</div>
</scrolllist>
</div>
</template>
<script>
// 引入组件
import scrolllist from 'vue-scrolllist';
module.exports = {
methods: {
// 翻页方法
getProducts () {
// 请务必Promise
return new Promise((resolve, reject) => {
ApiRequest.post({
// 每页条数
size: this.size,
// 当前页
page: this.currentpage
}).then((res) => {
// success
// 接口数据赋值
this.productslist = [...this.productslist, ...res.data.content];
// 返回总共条数
this.totalElements = res.data.totalElements;
// 每次请求当前+1,初始化下一页的页码
this.currentpage = res.data.number + 1;
// Promise resolve
resolve();
}, (res) => {
// error
});
});
}
},
data () {
return {
productslist: [],
// 定义每页显示多少条
size: 3,
// 初始化起始页面,视接口返回第一页的值而定
currentpage: 0,
// 总共返回数据,用于计算是否到达结果页
totalElements: null
};
},
ready () {
// 首次获取产品
this.getProducts();
},
components: {
// 初始化组件
scrolllist
}
};
</script>
三、参数说明
PS:
============== 父级dom位置决定组件位置
一个页面用多个滚动插件时要记得给插件命名
<scrolllist scrollname="scrollA" ... >
</scrolllist>
<scrolllist scrollname="scrollB" ... >
</scrolllist>