You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/** * mescroll-body写在子组件时,需通过mescroll的mixins补充子组件缺少的生命周期: * 当一个页面只有一个mescroll-body写在子组件时, 则使用mescroll-comp.js (参考 mescroll-comp 案例) * 当一个页面有多个mescroll-body写在子组件时, 则使用mescroll-more.js (参考 mescroll-more 案例) */const MescrollCompMixin = { // 因为子组件无onPageScroll和onReachBottom的页面生命周期,需在页面传递进到子组件 (一级)
onPageScroll(e) { this.handlePageScroll(e) }, onReachBottom() { this.handleReachBottom() }, // 当down的native: true时, 还需传递此方法进到子组件
onPullDownRefresh(){ this.handlePullDownRefresh() }, // mescroll-body写在子子子...组件的情况 (多级)
data() { return { mescroll: { onPageScroll: e=>{ this.handlePageScroll(e) }, onReachBottom: ()=>{ this.handleReachBottom() }, onPullDownRefresh: ()=>{ this.handlePullDownRefresh() } } } }, methods:{ handlePageScroll(e){ let item = this.$refs["mescrollItem"]; if(item && item.mescroll) item.mescroll.onPageScroll(e); }, handleReachBottom(){ let item = this.$refs["mescrollItem"]; if(item && item.mescroll) item.mescroll.onReachBottom(); }, handlePullDownRefresh(){ let item = this.$refs["mescrollItem"]; if(item && item.mescroll) item.mescroll.onPullDownRefresh(); } }}
export default MescrollCompMixin;
|