解决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 相关文章推荐
javascript实现仿银行密码输入框效果的代码
Dec 13 Javascript
location.search在客户端获取Url参数的方法
Jun 08 Javascript
关于Javascript作用域链的八点总结
Dec 06 Javascript
JQuery对表单元素的基本操作使用总结
Jul 18 Javascript
Jquery 实现checkbox全选方法
Jan 28 Javascript
javascript事件冒泡和事件捕获详解
May 26 Javascript
详解jQuery的表单验证插件--Validation
Dec 21 Javascript
vue生成随机验证码的示例代码
Sep 29 Javascript
Webpack中publicPath路径问题详解
May 03 Javascript
微信小程序自定义tab实现多层tab嵌套功能
Jun 15 Javascript
layer.open提交子页面的form和layedit文本编辑内容的方法
Sep 27 Javascript
Javascript实现关闭广告效果
Jan 29 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
FCKeditor添加自定义按钮
2008/03/27 PHP
PHP可逆加密/解密函数分享
2012/09/25 PHP
PHP链表操作简单示例
2016/10/15 PHP
php多文件打包下载的实例代码
2017/07/12 PHP
yii2 上传图片的示例代码
2018/11/02 PHP
PHP赋值的内部是如何跑的详解
2019/01/13 PHP
JavaScript中的数组遍历forEach()与map()方法以及兼容写法介绍
2016/05/19 Javascript
JS 全屏和退出全屏详解及实例代码
2016/11/07 Javascript
有关suggest快速删除后仍然出现下拉列表的bug问题
2016/12/02 Javascript
利用BootStrap的Carousel.js实现轮播图动画效果
2016/12/21 Javascript
浅谈Angular 中何时取消订阅
2017/11/22 Javascript
基于Vue2.X的路由和钩子函数详解
2018/02/09 Javascript
Vue数据双向绑定原理及简单实现方法
2018/05/18 Javascript
详解基于vue的服务端渲染框架NUXT
2018/06/20 Javascript
小程序云开发教程如何使用云函数实现点赞功能
2019/05/18 Javascript
使用vue-cli3+typescript的项目模板创建工程的教程
2020/02/28 Javascript
es6函数之rest参数用法实例分析
2020/04/18 Javascript
JavaScript实现刮刮乐效果
2020/11/01 Javascript
[36:17]DOTA2上海特级锦标赛 - VGL音乐会全集
2016/03/06 DOTA
[43:26]完美世界DOTA2联赛PWL S2 Forest vs Rebirth 第二场 11.20
2020/11/23 DOTA
Python的Flask框架中SQLAlchemy使用时的乱码问题解决
2015/11/07 Python
python项目对接钉钉SDK的实现
2019/07/15 Python
html5写一个BUI折叠菜单插件的实现方法
2019/09/11 HTML / CSS
Origins加拿大官网:雅诗兰黛集团高端植物护肤品牌
2017/11/19 全球购物
俄罗斯天然和有机产品、健康生活网上商店:Fitomarket.ru
2020/10/09 全球购物
瑞士首家网上药店折扣店:McDrogerie
2020/12/22 全球购物
青年创业培训欢迎词
2014/01/08 职场文书
人事文员岗位职责
2014/02/16 职场文书
打架检讨书2000字
2014/02/22 职场文书
老师对学生的评语
2014/04/18 职场文书
个人工作主要事迹
2014/05/08 职场文书
班子四风对照检查材料
2014/08/21 职场文书
汽车转让协议书
2015/01/29 职场文书
护士岗位竞聘书
2015/09/15 职场文书
windows11怎么查看自己安装的版本号? win11版本号的查看方法
2021/11/21 数码科技
服务器SVN搭建图文安装过程
2022/06/21 Servers