1.0.16 • Published 6 years ago

vue-mobile-page v1.0.16

Weekly downloads
69
License
-
Repository
-
Last release
6 years ago

vue-mobile-page

vue移动端下拉分页插件,其本质是使用指令实现。

Feature

  • 节流函数throttle控制touchmove
  • beforeCallback
  • afterCallback
  • loading
  • 分页请求开关pageOpen

Install

npm install vue-mobile-page --save

工作流程

binding指令的时候会去执行一次beforeCallback -> callback -> afterCallback流程。 其他场景——需要手动执行,提供了doCallback(详见method说明)方法

Usage

wrapper 父容器,固定的高度,用来获取scrollTop   wrapper-item 包裹子容器,用来获取高度offsetHeight

<template>
<div
  class="wrapper"
  v-page="{
    wrapperCls: 'wrapper-item',
    callback: getList,
    beforeCallback: beforeGetList,
    afterCallback: afterGetList
  }"
>
  <div class="wrapper-item">
    <div class="demo-item" v-for="item in list">{{item.title}}</div>
  </div>
</div>
</template>

<script>
import page from 'vue-mobile-page'

export default {
  mixins: [ page ],

  methods: {
    getList(pageCb) {
      console.log('currentPage', this.currentPage)
      let currentPageData = []
      // 此回调必须,用来更新分页状态
      pageCb && pageCb(currentPageData)
    },

    beforeGetList() {
      // ...
    },

    afterGetList(isNoData) {
      // ...
    }
  }
}
</script>

参数

参数名描述默认值
loadFirst首次是否自动加载true
childWrapperCls子容器类名,用来校验Dom结构的合理性''
callback分页回调''
beforeCallback分页前的回调,例如可以用来控制请求开关''
afterCallback分页后的回调,接受一个参数noData,同上''
loadingOpen是否开启默认的loading效果true
throttleTime截流waitTime500ms

内置data

参数名描述默认值
currentPage''1
pageSize''20
noData是否没有更多数据了false
pageOpen分页请求的开关,一般用在beforeCallback函数中true
pageLoading分页是否正在请求false
loadingEl请求loading的Dom节点null

内置method

// 用来重置分页相关参数
resetPage() {
  // ...
}

// 手动执行分页回调
// @params callback {Function} 拉取数据的函数
// @params beforeCallback {Function} 分页前的回调
// @params afterCallback {Function} 分页后的回调
doCallback(callback, beforeCallback, afterCallback) {
  // ...
}
1.0.16

6 years ago

1.0.15

6 years ago

1.0.14

6 years ago

1.0.13

6 years ago

1.0.12

6 years ago

1.0.11

6 years ago

1.0.10

6 years ago

1.0.9

6 years ago

1.0.8

6 years ago

1.0.7

6 years ago

1.0.6

6 years ago

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago