vue mounted 调用两次的完美解决办法


Posted in Javascript onOctober 29, 2018

在开发中发现其中一个页面moutned调用了两次,而其他页面正常,表示很懵逼,然后查找原因,终于找到了,其实归根到底是要知道mounted的调用机制问题;

vue mounted 调用两次的完美解决办法

情况:在这个页面中出现了mounted 加载了两次的情况;

方法:排除法

首先把 this.$store.commit() 方法注释掉,发现就好了,只加载一次

初步判断是commit  方法导致的

二  验证判断是否正确,不使用commit 方法,该用直接改变变量状态的方法,发现又加载了两次;

再次判断,不是由于commit引起的

三   猜想commit到底实现了什么逻辑,然后找到了v-if  

v-if会重新渲染页面,而mounted 又是在重新渲染完成之后调用的,所以猜想是v-if导致的

然后换成v-show 发现完美解决问题;

v-show 不会重新加载页面,仅仅是显示隐藏而已; 

vue mounted 调用两次的完美解决办法

从网上找来的生命周期图,各位网友可以了解一下,希望给你带来一些启发;

vue mounted 调用两次的完美解决办法 

PS:下面看下mounted函数调用技巧

为了确保dom成功渲染,利用setTimeout()

mounted() {
 setTimeout(() => {
  this._setSliderWidth()
  this._initDots()
  this._initSlider()

  if (this.autoPlay) {
   this._play()
  }
 }, 20)}

浏览器的刷新通常是17毫秒一次,所以这里用了20毫秒

总结

以上所述是小编给大家介绍的vue mounted 调用两次的完美解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery 开天辟地入门篇一
Dec 09 Javascript
封装的原生javascript弹出层代码
Sep 24 Javascript
js解析与序列化json数据(三)json的解析探讨
Feb 01 Javascript
jQuery实现回车键(Enter)切换文本框焦点的代码实例
May 05 Javascript
Javascript中的Prototype到底是什么
Feb 16 Javascript
微信jssdk用法汇总
Jul 16 Javascript
AngularJs基本特性解析(一)
Jul 21 Javascript
关于JavaScript 原型链的一点个人理解
Jul 31 Javascript
AngularJS入门教程之迭代器过滤详解
Aug 18 Javascript
Vue2 配置 Axios api 接口调用文件的方法
Nov 13 Javascript
解决Antd Table组件表头不对齐的问题
Oct 27 Javascript
vue 封装面包屑组件教程
Nov 16 Javascript
Electron中实现大文件上传和断点续传功能
Oct 28 #Javascript
JS 正则表达式验证密码、邮箱格式的实例代码
Oct 28 #Javascript
Js 利用正则表达式和replace函数获取string中所有被匹配到的文本(推荐)
Oct 28 #Javascript
深入浅析javascript函数中with
Oct 28 #Javascript
微信小程序动画(Animation)的实现及执行步骤
Oct 28 #Javascript
又拍云 Node.js 实现文件上传、删除功能
Oct 28 #Javascript
javascript中函数的写法实例代码详解
Oct 28 #Javascript
You might like
ThinkPHP与PHPExcel冲突解决方法
2011/08/08 PHP
谈谈php对接芝麻信用踩的坑
2016/12/01 PHP
javascript之ESC(第二类混淆)
2007/05/06 Javascript
js获得地址栏?问号后参数的方法
2013/08/08 Javascript
JQuery动画animate的stop方法使用详解
2014/05/09 Javascript
教你如何使用firebug调试功能了解javascript闭包和this
2015/03/04 Javascript
学习jQuey中的return false
2015/12/18 Javascript
JavaScript String 对象常用方法详解
2016/05/13 Javascript
深入理解jQuery layui分页控件的使用
2016/08/17 Javascript
javascript的document中的动态添加标签实现方法
2016/10/24 Javascript
jQuery插件ajaxFileUpload使用详解
2017/01/10 Javascript
vue2里面ref的具体使用方法
2017/10/27 Javascript
AngularJs 终极购物车(实例讲解)
2017/11/08 Javascript
值得收藏的vuejs安装教程
2017/11/21 Javascript
Webpack path与publicPath的区别详解
2018/05/03 Javascript
AngularJS 多指令Scope问题的解决
2018/10/25 Javascript
深入了解JavaScript代码覆盖
2019/06/13 Javascript
vue+koa2搭建mock数据环境的详细教程
2020/05/18 Javascript
JavaScript实现手机号码 3-4-4格式并控制新增和删除时光标的位置
2020/06/02 Javascript
浅谈vue中get请求解决传输数据是数组格式的问题
2020/08/03 Javascript
python中的随机函数random的用法示例
2018/01/27 Python
Python变量赋值的秘密分享
2018/04/03 Python
六行python代码的爱心曲线详解
2019/05/17 Python
关于pandas的离散化,面元划分详解
2019/11/22 Python
用React加CSS3实现微信拆红包动画效果
2017/03/13 HTML / CSS
CSS3模拟动画下拉菜单效果
2017/04/12 HTML / CSS
英国美发和美容产品商城:HQhair
2019/02/08 全球购物
全球工业:Global Industrial
2020/02/01 全球购物
新学期班主任寄语
2014/01/18 职场文书
初中科学教学反思
2014/01/21 职场文书
中学生英语演讲稿
2014/04/26 职场文书
微笑服务标语
2014/06/24 职场文书
材料化学专业求职信
2014/07/15 职场文书
2015年八一建军节演讲稿
2015/03/19 职场文书
教师节领导致辞
2015/07/29 职场文书
2015年社区重阳节活动总结
2015/07/30 职场文书