使用时有三个要点:
一:html部分
<div class="example" ref="divScroll"> <div> <p>内容1</p> <p>内容2</p> <ul> <li>list1</li> <li>list2</li> <ul> </div> </div>
【注】
1.最外层加ref,让better-scroll通过ref来获取整个div;
2.紧跟一个div,不用加任何样式或class, 最终可以滑动的部分就是这个div,这个div必须是 加了ref 的div 的 直接子元素。 在这个div里面就可以放置希望滑动的内容了。
二: css部分
.example width: 100% position: absolute top: 174px bottom: 48px left: 0 overflow: hidden
【注】 1. 这里只是举例,并不是一定要这样写。
2. 首先将 获取到的加了 ref 的div 的 高度固定, 可以设置定位, 也可以设置 height, max-height...
3. 加 overflow: hidden 。
三: js 部分
首先 引入 better-scroll:
import BScroll from 'better-scroll';
1: 使用 mounted() 函数
mounted() { this.scroll = new BScroll(this.$refs.divScroll, { click: true, }); },
2.使用 created() 函数
created() { this.$nextTick(() => { this.scroll = new BScroll(this.$refs.divScroll, { click: true, }); }); },
【注】 1.使用created 函数 要异步执行(此时html 尚未渲染完成)。
2. mounted函数 无需异步执行(mounted 函数在html渲染完成后触发)。
下面看下Vue中引入better-scroll的方法
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() })
总结
以上所述是小编给大家介绍的vue2中引用及使用 better-scroll的方法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?