解决nuxt页面中mounted、created、watch执行两遍的问题


Posted in Javascript onNovember 05, 2020

前言:

在开发中偶然检查Network请求的时候发现,在页面中created钩子函数中请求了一个接口,但是页面这个页面加载的时候,接口会连续请求两边,然后我就排查是否有其他地方调用了同样的接口,检查了好几遍后发现并没有,WTF,然后我在created中打印了一下,惊奇的发现。。。created会执行两次打印。。。

WTF、WTF、WTF,小朋友你是否有很多问号???,然后试了下,不光created会执行两遍,mounted也行,就连watch里面监听的也会,握草(草是一种植物),此处省略我咔咔排查了一个小时各种删除各种排查的步骤。。。

得出以下结论:

第一种:

页面布局不合理,会导致执行两遍,比如行内元素内嵌套了块级元素,然后块级元素又使用了for,或者if,要想排查是否是这种情况,只能一点点删除代码,看看删除了那一块的代码后不再执行两遍,然后从病根出排查修改。

第二种:

有使用v-if和v-else的结合也会执行两遍,这种的我测试了下,把v-if都改成v-show。。。就TM的好了。

第三种:

我在页面中使用了swiper,发现。。。swiper的代码也会触发执行两遍,应该是swiper的代码触发了规则,然后我在swiper组件使用一个div包裹了一下。。。发现好了,无语,毫无规则可言

第四种:

还未发现,,,欢迎评论增加

最后:

此文章使用了较多的**修饰词,请原谅。。。因为那种你想象不到的问题原因着实让人。不说了,求个赞吧!!!

补充知识:vue.js页面加载执行created,mounted先后顺序

created页面加载未渲染html之前执行。

mounted渲染html后再执行。

由于created在html模板生产之前所以无法对Dom进行操作而mounted可以。

以上这篇解决nuxt页面中mounted、created、watch执行两遍的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery cdn使用介绍
May 08 Javascript
js函数调用的方式
May 06 Javascript
JS实现1000以内被3或5整除的数字之和
Feb 18 Javascript
js将table的每个td的内容自动赋值给其title属性的方法
Oct 13 Javascript
详解浏览器渲染页面过程
Feb 09 Javascript
解决Angular.js中使用Swiper插件不能滑动的问题
Feb 26 Javascript
用Node提供静态文件服务的方法
Jul 06 Javascript
JavaScript页面加载事件实例讲解
Sep 01 Javascript
es6数组includes()用法实例分析
Apr 18 Javascript
vue添加锚点,实现滚动页面时锚点添加相应的class操作
Aug 10 Javascript
基于原生JS封装的Modal对话框插件的示例代码
Sep 09 Javascript
详解nginx配置vue h5 history去除#号
Nov 09 Javascript
Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)
Nov 05 #Javascript
如何利用vue实现波谱拟合详解
Nov 05 #Javascript
关于Vue中$refs的探索浅析
Nov 05 #Javascript
JavaScript 实现轮播图特效的示例
Nov 05 #Javascript
nuxt 服务器渲染动态设置 title和seo关键字的操作
Nov 05 #Javascript
nuxt 每个页面head标签内容设置方式
Nov 05 #Javascript
JavaScript TAB栏切换效果的示例
Nov 05 #Javascript
You might like
PHP安全编程之加密功能
2006/10/09 PHP
Php做的端口嗅探器--可以指定网站和端口
2006/10/09 PHP
php自动加载的两种实现方法
2010/06/21 PHP
php在线代理转向代码
2012/05/05 PHP
分析php://output和php://stdout的区别
2018/05/06 PHP
解决laravel上传图片之后,目录有图片,但是访问不到(404)的问题
2019/10/14 PHP
javascript 多级checkbox选择效果
2009/08/20 Javascript
javascript SpiderMonkey中的函数序列化如何进行
2012/12/05 Javascript
利用jQuery的deferred对象实现异步按顺序加载JS文件
2013/03/17 Javascript
JS获取地址栏参数的几种方法小结
2014/02/28 Javascript
jQuery将所有被选中的checkbox某个属性值连接成字符串的方法
2015/01/24 Javascript
理解javascript中try...catch...finally
2015/12/25 Javascript
浅谈String.valueOf()方法的使用
2016/06/06 Javascript
JavaScript制作简单分页插件
2016/09/11 Javascript
JavaScript中apply方法的应用技巧小结
2016/09/29 Javascript
Node.js设置CORS跨域请求中多域名白名单的方法
2017/03/28 Javascript
JS中利用swiper实现3d翻转幻灯片实例代码
2017/08/25 Javascript
纯JavaScript实现实时反馈系统时间
2017/10/26 Javascript
[00:48]DOTA2国际邀请赛公开赛报名开始 扫码开启逐梦之旅
2018/06/06 DOTA
python使用reportlab实现图片转换成pdf的方法
2015/05/22 Python
Python使用Selenium+BeautifulSoup爬取淘宝搜索页
2018/02/24 Python
《与孩子一起学编程》python自测题
2018/05/27 Python
Python嵌套式数据结构实例浅析
2019/03/05 Python
关于python多重赋值的小问题
2019/04/17 Python
python获取txt文件词向量过程详解
2019/07/05 Python
关于numpy数组轴的使用详解
2019/12/05 Python
Python 生成VOC格式的标签实例
2020/03/10 Python
CSS3实现线性渐变用法示例代码详解
2020/08/07 HTML / CSS
详解使用postMessage解决iframe跨域通信问题
2019/11/01 HTML / CSS
Columbia Sportswear法国官网:全球户外品牌
2020/09/25 全球购物
创业计划书中包含的9个方面
2013/12/26 职场文书
学雷锋标语
2014/06/25 职场文书
2015驻村干部工作总结
2015/04/07 职场文书
2015年度企业工作总结
2015/05/21 职场文书
男方家长婚礼致辞
2015/07/27 职场文书
2016大学优秀学生干部事迹材料
2016/03/01 职场文书