最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

vue2中引用及使用 better-scroll的方法详解

来源:动视网 责编:小采 时间:2020-11-27 22:03:56
文档

vue2中引用及使用 better-scroll的方法详解

vue2中引用及使用 better-scroll的方法详解:使用时有三个要点: 一:html部分 <div class=example ref=divScroll> <div> <p>内容1</p> <p>内容2</p> <ul> <li>list1</li> <li>l
推荐度:
导读vue2中引用及使用 better-scroll的方法详解:使用时有三个要点: 一:html部分 <div class=example ref=divScroll> <div> <p>内容1</p> <p>内容2</p> <ul> <li>list1</li> <li>l


使用时有三个要点:

一: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的方法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

文档

vue2中引用及使用 better-scroll的方法详解

vue2中引用及使用 better-scroll的方法详解:使用时有三个要点: 一:html部分 <div class=example ref=divScroll> <div> <p>内容1</p> <p>内容2</p> <ul> <li>list1</li> <li>l
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top