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 相关文章推荐
JS 如果改变span标签的是否隐藏属性
Oct 06 Javascript
jQuery.prototype.init选择器构造函数源码思路分析
Feb 05 Javascript
jquery中通过父级查找进行定位示例
Jun 28 Javascript
jQuery学习笔记之创建DOM元素
Jan 19 Javascript
javascript高级编程之函数表达式 递归和闭包函数
Nov 29 Javascript
理解javascript中的MVC模式
Jan 28 Javascript
深入理解setTimeout函数和setInterval函数
May 20 Javascript
BootStrap智能表单实战系列(四)表单布局介绍
Jun 13 Javascript
Angularjs验证用户输入的字符串是否为日期时间
Jun 01 Javascript
深入理解vue2.0路由如何配置问题
Jul 18 Javascript
Webpack框架核心概念(知识点整理)
Dec 22 Javascript
vue+iview实现文件上传
Nov 17 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
set_include_path在win和linux下的区别
2008/01/10 PHP
php中json_decode()和json_encode()的使用方法
2012/06/04 PHP
php 模拟 asp.net webFrom 按钮提交事件的思路及代码
2013/12/02 PHP
Zend Framework框架Smarty扩展实现方法
2016/03/22 PHP
Zend Framework教程之Zend_Helpers动作助手ViewRenderer用法详解
2016/07/20 PHP
PHP中的Iterator迭代对象属性详解
2019/04/12 PHP
Js 时间间隔计算的函数(间隔天数)
2011/11/15 Javascript
仿中关村在线首页弹出式广告插件(jQuery版)
2012/05/03 Javascript
深入理解javascript中defer的作用
2013/12/11 Javascript
编写高效jQuery代码的4个原则和5个技巧
2014/04/24 Javascript
JavaScript中的普通函数与构造函数比较
2015/04/07 Javascript
jQuery实现的左右移动焦点图效果
2016/01/14 Javascript
AngularJs  Understanding Angular Templates
2016/09/02 Javascript
jQuery实现点击某个div打开层,点击其他div关闭层实例分析(阻止冒泡)
2016/11/18 Javascript
ES7中利用Await减少回调嵌套的方法详解
2017/11/01 Javascript
vue2.0 + element UI 中 el-table 数据导出Excel的方法
2018/03/02 Javascript
关于单文件组件.vue的使用
2018/09/20 Javascript
JavaScript 实现轮播图特效的示例
2020/11/05 Javascript
[02:15]2014DOTA2国际邀请赛 赛后退役选手回顾
2014/08/01 DOTA
[57:38]2018DOTA2亚洲邀请赛3月30日 小组赛A组 OpTic VS OG
2018/03/31 DOTA
python执行子进程实现进程间通信的方法
2015/06/02 Python
Python备份目录及目录下的全部内容的实现方法
2016/06/12 Python
python中pandas.DataFrame对行与列求和及添加新行与列示例
2017/03/12 Python
Python生成数字图片代码分享
2017/10/31 Python
利用Python找出序列中出现最多的元素示例代码
2017/12/08 Python
CSS3动画animation实现云彩向左滚动
2014/05/09 HTML / CSS
芬兰攀岩、山地运动和户外活动用品购物网站:Bergfreunde
2016/10/06 全球购物
英国时尚优质的女装:Hope Fashion
2018/08/14 全球购物
创业计划书的内容步骤和要领
2014/01/04 职场文书
元旦活动感言
2014/03/08 职场文书
售后服务承诺书
2014/03/26 职场文书
学校运动会霸气口号
2014/06/07 职场文书
学校食堂标语
2014/10/06 职场文书
合作协议书模板
2014/10/10 职场文书
五四青年节活动总结
2015/02/10 职场文书
优秀班主任工作总结2015
2015/05/25 职场文书