解决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实现改变TEXTAREA滚动条和按钮的颜色,以及怎样让滚动条变得扁平
Apr 20 Javascript
chrome浏览器不支持onmouseleave事件的解决技巧
May 31 Javascript
js动态添加事件并可传参数示例代码
Oct 21 Javascript
jquery获取一个元素下面相同子元素的个数代码
Jul 31 Javascript
JS实现点击按钮自动增加一个单元格的方法
Mar 09 Javascript
js小数计算小数点后显示多位小数的实现方法
May 30 Javascript
jQuery实现左侧导航模块的显示与隐藏效果
Jul 04 Javascript
前端框架Vue.js中Directive知识详解
Sep 12 Javascript
Bootstrap 填充Json数据的实例代码
Jan 11 Javascript
原生JavaScript实现的简单省市县三级联动功能示例
May 27 Javascript
Vue图片浏览组件v-viewer用法分析【支持旋转、缩放、翻转等操作】
Nov 04 Javascript
Vue 实现一个简单的鼠标拖拽滚动效果插件
Dec 10 Vue.js
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
Apache, PHP在Windows 9x/NT下的安装与配置 (一)
2006/10/09 PHP
基于PHP读取csv文件内容的详解
2013/06/18 PHP
php mail to 配置详解
2014/01/16 PHP
PHP函数实现分页含文本分页和数字分页
2014/10/23 PHP
PHP中文乱码解决方案
2015/03/05 PHP
微信支付开发交易通知实例
2016/07/12 PHP
thinkPHP框架可添加js事件的分页类customPage.class.php完整实例
2017/03/16 PHP
微信接口生成带参数的二维码
2017/07/31 PHP
PHP设计模式之装饰器模式定义与用法详解
2018/04/02 PHP
Javascript注入技巧
2007/06/22 Javascript
js实现的常用的左侧导航效果
2013/10/17 Javascript
JS获取select的value和text值的简单实例
2014/02/26 Javascript
JavaScript使用ActiveXObject访问Access和SQL Server数据库
2015/04/02 Javascript
Jquery日历插件制作简单日历
2015/10/28 Javascript
js+canvas简单绘制圆圈的方法
2016/01/28 Javascript
一步一步封装自己的HtmlHelper组件BootstrapHelper(二)
2016/09/14 Javascript
JS跨域请求外部服务器的资源
2017/02/06 Javascript
AngularJS前端页面操作之用户修改密码功能示例
2017/03/27 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
2017/11/21 Javascript
微信小程序实现渐入渐出动画效果
2019/06/13 Javascript
vue中使用v-model完成组件间的通信
2019/08/22 Javascript
node事件循环和process模块实例分析
2020/02/14 Javascript
开源软件包和环境管理系统Anaconda的安装使用
2017/09/04 Python
Python内置模块logging用法实例分析
2018/02/12 Python
Python实现批量读取图片并存入mongodb数据库的方法示例
2018/04/02 Python
Caffe均值文件mean.binaryproto转mean.npy的方法
2018/07/09 Python
使用python制作游戏下载进度条的代码(程序说明见注释)
2019/10/24 Python
python 回溯法模板详解
2020/02/26 Python
运行python提示no module named sklearn的解决方法
2020/11/29 Python
详解HTML5中的Communication API基本使用方法
2016/01/29 HTML / CSS
初中语文教学反思
2014/02/02 职场文书
小学生综合素质评语
2014/04/23 职场文书
离婚起诉书范文2016
2015/11/26 职场文书
七年级思品教学反思
2016/02/20 职场文书
使用Docker容器部署rocketmq单机的全过程
2022/04/03 Servers
Python使用Opencv打开笔记本电脑摄像头报错解问题及解决
2022/06/21 Python