vue中实现移动端的scroll滚动方法


Posted in Javascript onMarch 03, 2018

一、首先安装安装

npm install better-scroll --save

二、 并在组件中引用

import BScroll from ‘better-scroll'

template中引用指向将要滚动的DOM元素

根据官方文档ref属性的说明,我们可以这样将DOM元素引用

vue中实现移动端的scroll滚动方法

vue中实现移动端的scroll滚动方法

三、 在methods中注册_initScroll方法,这个方法是对better-scroll的实例化,并且这个方法将来会在页面DOM结构渲染后被执行

methods: {
   _initScroll(){
    this.menuScroll = new BScroll(this.$refs.menuWrapper, {})
    this.foodsScroll = new BScroll(this.$refs.foodsWrapper, {})
   }
  }
 }

四、在created()方法中,后台数据获取成功之后的回调中,调用_initScroll();

Vue 更新数据时是异步的,所以在数据未加载完全之前,Bscroll无法获取目标内容的高度,所以会导致无法滚动的现象

这里一定要注意,数据获取成功后,直接Dom不一定是数据获取之后的渲染,所以要利用this.nextTick()方法,在this.nextTick的回调中使用_initScroll();

看看官方关于this.$nextTick()的说明

vue中实现移动端的scroll滚动方法

所以我们在项目中应该这样书写:

vue中实现移动端的scroll滚动方法

以上这篇vue中实现移动端的scroll滚动方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript创建命名空间(namespace)的最简实现
Dec 11 Javascript
javascript 写类方式之一
Jul 05 Javascript
百度Popup.js弹出框进化版 拖拽小框架发布 兼容IE6/7/8,Firefox,Chrome
Apr 13 Javascript
基于jquery的实现简单的表格中增加或删除下一行
Aug 01 Javascript
jquery ajax 局部刷新小案例
Feb 08 Javascript
jQuery 实现自动填充邮箱功能(带下拉提示)
Oct 14 Javascript
简单谈谈jQuery(function(){})与(function(){})(jQuery)
Dec 19 Javascript
jQuery中offsetParent()方法用法实例
Jan 19 Javascript
jQuery中 prop() attr()使用详解
May 19 Javascript
详解Node.js模块间共享数据库连接的方法
May 24 Javascript
微信小程序select下拉框实现效果
May 15 Javascript
vue element实现表格合并行数据
Nov 30 Vue.js
vue.js-div滚动条隐藏但有滚动效果的实现方法
Mar 03 #Javascript
vue实现图片滚动的示例代码(类似走马灯效果)
Mar 03 #Javascript
Vue2.0中集成UEditor富文本编辑器的方法
Mar 03 #Javascript
js操作二进制数据方法
Mar 03 #Javascript
vue2.0使用swiper组件实现轮播的示例代码
Mar 03 #Javascript
Vue的轮播图组件实现方法
Mar 03 #Javascript
在Vue中使用Compass的方法
Mar 02 #Javascript
You might like
php将session放入memcached的设置方法
2014/02/14 PHP
php使用smtp发送支持附件的邮件示例
2014/04/13 PHP
详解PHP用substr函数截取字符串中的某部分
2016/12/03 PHP
javascript 简单高效判断数据类型 系列函数 By shawl.qiu
2007/03/06 Javascript
JavaScript 计算当天是本年本月的第几周
2009/03/22 Javascript
ImageZoom 图片放大镜效果(多功能扩展篇)
2010/04/14 Javascript
javascript表单验证 - Parsley.js使用和配置
2013/01/25 Javascript
用IE重起计算机或者关机的示例代码
2014/03/10 Javascript
js实时获取并显示当前时间的方法
2015/07/31 Javascript
AngularJS中的过滤器filter用法完全解析
2016/04/22 Javascript
JS实现隐藏同级元素后只显示JS文件内容的方法
2016/09/04 Javascript
使用UrlConnection实现后台模拟http请求的简单实例
2017/01/04 Javascript
JS 在数组指定位置插入/删除数据的方法
2017/01/12 Javascript
javascript设计模式之Adapter模式【适配器模式】实现方法示例
2017/01/13 Javascript
浅谈Vue.js 组件中的v-on绑定自定义事件理解
2017/11/17 Javascript
详解Nodejs get获取远程服务器接口数据
2019/03/26 NodeJs
vue v-for 点击当前行,获取当前行数据及event当前事件对象的操作
2020/09/10 Javascript
linux下安装easy_install的方法
2013/02/10 Python
python字符串替换的2种方法
2014/11/30 Python
Python列表append和+的区别浅析
2015/02/02 Python
详解Django框架中用context来解析模板的方法
2015/07/20 Python
Python random模块用法解析及简单示例
2017/12/18 Python
django项目搭建与Session使用详解
2018/10/10 Python
python 利用pandas将arff文件转csv文件的方法
2019/02/12 Python
Python中字符串List按照长度排序
2019/07/01 Python
Lancome兰蔻官方旗舰店:来自法国的世界知名美妆品牌
2018/06/14 全球购物
写出程序把一个链表中的接点顺序倒排
2014/04/28 面试题
如何删除一个表里面的重复行
2013/07/13 面试题
简述网络文件系统NFS,并说明其作用
2016/10/19 面试题
工厂门卫岗位职责
2013/11/25 职场文书
2013年员工自我评价范文
2013/12/27 职场文书
关爱残疾人演讲稿
2014/05/24 职场文书
妈妈再爱我一次观后感
2015/06/08 职场文书
机器人总动员观后感
2015/06/09 职场文书
奇妙的 CSS shapes(CSS图形)
2021/04/05 HTML / CSS
python 如何用terminal输入参数
2021/05/25 Python