Vue中引入better-scroll

2018-04-11  本文已影响0人  leesession

1.用npm 安装好 better-scroll
npm install--save better-scroll

2.在需要的页面引入
import BScroll from 'better-scroll'

3.在data中定义 better-scroll的参数

options: {
          pullDownRefresh: {
            threshold: 50, // 当下拉到超过顶部 50px 时,触发 pullingDown 事件
            stop: 20 // 刷新数据的过程中,回弹停留在距离顶部还有 20px 的位置
          },
          pullUpLoad: {
            threshold: -20 // 在上拉到超过底部 20px 时,触发 pullingUp 事件
          },
//          pullDownRefresh: false, //关闭下拉
//          pullUpLoad: false, // 关闭上拉
          click: true,
          probeType: 3,
          startY: 0,
          scrollbar: true
        }

4.在template中写入

<div class="wrapper" ref="wrapper" :scrollbar="options.scrollbar" :startY="options.startY">

5.在methods中写入方法,我自定义的

load() {
        if (!this.scroll) {
          this.scroll = new BScroll(this.$refs.wrapper, this.options);
          // 上拉
          this.scroll.on('pullingUp', () => {
            // 刷新数据的过程中,回弹停留在距离顶部还有20px的位置
            this.setData();
          })
        } else {
          this.scroll.refresh()
        }
      },
 setData() {
        this.$nextTick(() => {
          let arr = [1, 2, 3, 'james'];
          this.data = this.data.concat(arr)// 添加数据
          this.scroll.finishPullUp();
          this.pullingDownUp()
        })
      },
pullingDownUp() {
        this.scroll.refresh() //重新计算元素高度
      },

6.在created中加载

 this.$nextTick(() => {
        this.load()
        this.setData()
      })
上一篇下一篇

猜你喜欢

热点阅读