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实现网页跳转或用命令打开指定网页的解决方法
Jul 09 Javascript
Jquery插件easyUi表单验证提交(示例代码)
Dec 30 Javascript
javascript客户端遍历控件与获取父容器对象示例代码
Jan 06 Javascript
js实现的标题栏新消息闪烁提示效果
Jun 06 Javascript
jQuery实现点击按钮文字变成input框点击保存变成文字
May 09 Javascript
浅谈js继承的实现及公有、私有、静态方法的书写
Oct 28 Javascript
Javascript中return的使用与闭包详解
Jan 11 Javascript
详解VueJs异步动态加载块
Mar 09 Javascript
jQuery插件FusionCharts绘制ScrollColumn2D图效果示例【附demo源码下载】
Mar 22 jQuery
Vue 使用中的小技巧
Apr 26 Javascript
vue实现的双向数据绑定操作示例
Dec 04 Javascript
vue+elementUI实现图片上传功能
Aug 20 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
解析PHP汉字转换拼音的类
2013/06/18 PHP
两种设置php载入页面时编码的方法
2014/07/29 PHP
详解PHP用substr函数截取字符串中的某部分
2016/12/03 PHP
PHP封装的XML简单操作类完整实例
2017/11/13 PHP
PhpStorm本地断点调试的方法步骤
2018/05/21 PHP
PHP实现websocket通信的方法示例
2018/08/28 PHP
TP5框架使用QueryList采集框架爬小说操作示例
2020/03/26 PHP
jquery ui 1.7 ui.tabs 动态添加与关闭(按钮关闭+双击关闭)
2010/04/01 Javascript
jQuery实现 注册时选择阅读条款 左右移动
2013/04/11 Javascript
现代 JavaScript 开发编程风格Idiomatic.js指南中文版
2014/05/28 Javascript
js实现点击图片将图片地址复制到粘贴板的方法
2015/02/16 Javascript
Javascript实现获取及设置光标位置的方法
2015/07/21 Javascript
Javascript对象字面量的理解
2016/06/22 Javascript
WebSocket+node.js创建即时通信的Web聊天服务器
2016/08/08 Javascript
使用Ajax生成的Excel文件并下载的实例
2016/11/21 Javascript
bootstrap配合Masonry插件实现瀑布式布局
2017/01/18 Javascript
Vue按需加载的具体实现
2017/12/02 Javascript
如何用webpack4带你实现一个vue的打包的项目
2018/06/20 Javascript
Vue下路由History模式打包后页面空白的解决方法
2018/06/29 Javascript
快速解决Vue项目在IE浏览器中显示空白的问题
2018/09/04 Javascript
使用validate.js实现表单数据提交前的验证方法
2018/09/04 Javascript
vue项目中将element-ui table表格写成组件的实现代码
2019/06/12 Javascript
js Math数学简单使用操作示例
2020/03/13 Javascript
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
2021/01/22 Vue.js
Python使用urllib模块的urlopen超时问题解决方法
2014/11/08 Python
详解Python3中的Sequence type的使用
2015/08/01 Python
使用python实现rsa算法代码
2016/02/17 Python
python模拟Django框架实例
2016/05/17 Python
python编写简易聊天室实现局域网内聊天功能
2018/07/28 Python
python爬虫自动创建文件夹的功能
2018/08/01 Python
Python基于yaml文件配置logging日志过程解析
2020/06/23 Python
神经网络训练采用gpu设置的方式
2021/03/03 Python
亚马逊中国官方网站:amazon.cn
2017/05/25 全球购物
世界气象日活动总结
2015/02/27 职场文书
2015年信访维稳工作总结
2015/04/07 职场文书
分析并发编程之LongAdder原理
2021/06/29 Java/Android