解决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函数
May 27 Javascript
深入认识javascript中的eval函数
Nov 02 Javascript
javascript判断iphone/android手机横竖屏模式的函数
Dec 20 Javascript
jQuery 设置 CSS 属性示例介绍
Jan 16 Javascript
js实现简易的单数字随机抽奖(0-9)
Mar 19 Javascript
javascript实现计时器的简单方法
Feb 21 Javascript
返回函数的JavaScript函数
Jun 14 Javascript
微信小程序 闭包写法详细介绍
Dec 14 Javascript
Vue组件实例间的直接访问实现代码
Aug 20 Javascript
深入浅析AngularJs模版与v-bind
Jul 06 Javascript
vue组件tabbar使用方法详解
Nov 06 Javascript
javascript实现5秒倒计时并跳转功能
Jun 20 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下网站防IP攻击代码,超级实用
2010/10/24 PHP
百度工程师讲PHP函数的实现原理及性能分析(一)
2015/05/13 PHP
php 防止表单重复提交两种实现方法
2016/11/03 PHP
Yii框架分页技术实例分析
2019/08/30 PHP
用正则表达式 动态创建/增加css style script 兼容IE firefox
2009/03/10 Javascript
屏蔽网页右键复制和ctrl+c复制的js代码
2013/01/04 Javascript
设为首页和收藏的Javascript代码(亲测兼容IE,Firefox,chrome等浏览器)
2013/11/18 Javascript
Jquery Ajax解析XML数据(同步及异步调用)简单实例
2014/02/12 Javascript
js截取中英文字符串、标点符号无乱码示例解读
2014/04/17 Javascript
基于jQuery的网页影音播放器jPlayer的基本使用教程
2016/03/08 Javascript
AngularJS入门教程之AngularJS 模板
2016/08/18 Javascript
jquery插件treegrid树状表格的使用方法详解(.Net平台)
2017/01/03 Javascript
JS实现两周内自动登录功能
2017/03/23 Javascript
vue项目中vue-i18n和element-ui国际化开发实现过程
2018/04/25 Javascript
Angular Renderer (渲染器)的具体使用
2018/05/03 Javascript
js实现点赞按钮功能的实例代码
2020/03/06 Javascript
Node.js API详解之 string_decoder用法实例分析
2020/04/29 Javascript
教你安装python Django(图文)
2013/11/04 Python
python中numpy基础学习及进行数组和矢量计算
2017/02/12 Python
详解 Python中LEGB和闭包及装饰器
2017/08/03 Python
Jupyter中直接显示Matplotlib的图形方法
2018/05/24 Python
使用python将excel数据导入数据库过程详解
2019/08/27 Python
python 实现方阵的对角线遍历示例
2019/11/29 Python
基于python traceback实现异常的获取与处理
2019/12/13 Python
Flask模板引擎Jinja2使用实例
2020/04/23 Python
高品质和独特的产品世界:Creations and Collections
2018/01/07 全球购物
世界顶级俱乐部的官方球衣和套装:Subside Sports
2018/04/22 全球购物
Nayomi官网:沙特阿拉伯王国睡衣和内衣品牌
2020/12/19 全球购物
几个数据库方面的面试题
2016/07/01 面试题
AJAX都有哪些有点和缺点
2012/11/03 面试题
单位未婚证明范本
2014/01/18 职场文书
2014年三八妇女节活动方案
2014/02/28 职场文书
酒店辞职书范文
2015/02/26 职场文书
redis通过6379端口无法连接服务器(redis-server.exe闪退)
2021/05/08 Redis
mysql5.7使用binlog 恢复数据的方法
2021/06/03 MySQL
Python3中最常用的5种线程锁实例总结
2021/07/07 Python