vue项目热更新的坑及解决
vue项目热更新坑
今天在使用vue-cli构造的vue项目时,遇到一个坑。
setInterval(() => { console.log('This is one.') }, 10000)
运行后如下:
这时我们修改其中的代码,不刷新网页:
setInterval(() => { console.log('This is two.') }, 1000)
结果如下,发现之前的计时函数以久存在,热更新 !== 刷新页面 !!!谨记
vue项目热更新慢
突然有一天,vue项目跑着跑着,热更新的时候卡到75%的地方卡好久,一个热更新要10几秒,这简直耽误开发进度,不能忍,怎么办呢?
查找热更新慢是哪里慢—分析原因
针对这个分析了一下热更新慢的原因,步骤如下
首先先在package中的启动命令加上
--progress --watch --colors --profile
先解释一下这几个参数的含义
–progress
构建进度–watch
实时监测–profile
编译过程中的步骤耗时时间
加上这个配置,重启项目,就可以看到耗时了
解决办法
图中红色框出来的地方耗时最严重,也就是卡到75%的地方耗时最严重,肿么办呢?
问度娘,大神们说,这样做
1、安装babel-plugin-dynamic-import-node插件
$ npm install babel-plugin-dynamic-import-node
2、.babelrc文件里添加配置dynamic-import-node
公司项目脚手架为vue-cli2.0
所以在.babelrc文件里添加配置dynamic-import-node
网上的大神们说,加上就好了,很兴奋,终于可以好了,然而,我再跑一遍项目,还是一样,还是蜗牛的速度,还是卡在75%。。。。。。心塞~~~~~~~
3、改变路由懒加载方式
求助了个大神,大神说是路由太多了,是呀,项目越来越多了,肿么办,让试一下用import 懒加载路由,因为我现在用的是require懒加载路由的,如下图
把下图中require方式换成import方式
项目再跑一遍,1、2秒就热更新成功~~泪崩,终于好了,纠其原因,我猜的是安装的插件babel-plugin-dynamic-import-node,与import路由加载方式配套使用才能发挥期作用,搞定,撒花·······
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
vue+echarts实现可拖动节点的折线图(支持拖动方向和上下限的设置)
制作一个折线图用于显示当前24小时的数据,并且可以通过拖动折现图设置数据,接下来通过本文给大家分享vue+echarts实现可拖动节点的折线图(支持拖动方向和上下限的设置),感兴趣的朋友跟随一起学习吧2019-04-04vue3中使用vuedraggable实现拖拽el-tree数据分组功能
这篇文章主要介绍了vue3中使用vuedraggable实现拖拽el-tree数据分组功能,可以实现单个拖拽、双击添加、按住ctrl键实现多个添加,或者按住shift键实现范围添加,添加到框中的数据,还能拖拽排序,需要的朋友可以参考下2024-02-02解决element ui select下拉框不回显数据问题的解决
这篇文章主要介绍了解决element ui select下拉框不回显数据问题的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-02-02el-select单选时选择后输入框的is-focus状态并没有取消问题解决
这篇文章主要给大家介绍了关于el-select单选时选择后输入框的is-focus状态并没有取消问题的解决过程,文中通过图文以及代码示例将解决的办法介绍的非常详细,需要的朋友可以参考下2024-01-01
最新评论