vue-cli 关闭热更新操作


Posted in Javascript onSeptember 18, 2020

vue 手脚架在使用过程中,更改代码会自动更新页面,非常的方便,但是有些情况向关闭掉这热更新功能,我使用的是vue-admin-template模板来开发的,所以更改也是基于这个模板的。

在build文件夹下有个webpack.dev.conf.js文件。

然后添加一个配置项:inline: false 即可关闭热更新操作。

vue-cli 关闭热更新操作

补充知识: vue多页面热更新缓慢原因以及解决方法

热更新慢的原因

多页面就是多入口,会生成多个html文件,之前我基本都是单页面,因为是单入口没有这个问题,当偶然间接触了一个多页面的项目发现了热更新很慢的问题,这当然很不舒服,就开始查方法,可能要2,3分钟,这个和webpack配置里面的 HtmlWebpackPlugin 插件性能有问题当生成html文件多的时候会很慢,越多越慢。原因就是这样,下面是解决方法。

解决方法

// An highlighted block
'use strict';
const path = require('path');
const glob = require('glob');
const config = require('../config');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin')

exports.getPages = function () {
 const pages = [];

 const globpath = './src/pages/personCenter1';
 const _pages = glob.sync(globpath);
 for (let page of _pages){
 pages.push({
  static:glob.sync(path.join(__dirname, '..', page) + '/static')[0], //各个static目录绝对路径
  name:path.basename(page),
  html:glob.sync(page + '/app.html')[0],
  js:page + '/app.js',
 })
 }
 return pages;
};

exports.getEntries = function () {
 const pages = exports.getPages();

 const entries = {};
 for (let page of pages) {
 entries[page.name] = page.js;
 }
 return entries;
};

exports.getHtmlWebpackPlugins = function () {
 const pages = exports.getPages();

 const htmls = [];
 let html;
 for (let page of pages) {
 html = new HtmlWebpackPlugin({
  filename: `${config.build.index}/${page.name}.html`,
  template: page.html || path.join(__dirname, '..', 'src/index1.html'),
  inject: true,
  chunks:['manifest', 'vendor', page.name],
  minify: {
  removeComments: true,
  collapseWhitespace: true,
  // removeAttributeQuotes: true
  removeAttributeQuotes: false
  },
  chunksSortMode: 'dependency'
 });
 htmls.push(html)
 }
 return htmls;
};

glob 在webpack中应用于文件的路径处理,当搭建多页面应用时就可以使用glob对页面需要打包文件的路径进行很好的处理,当然也能在热更新的时候控制局部哪个文件下更新。

exports.getPages = function () {
 const pages = [];

 const globpath = './src/pages/personCenter1';
 const _pages = glob.sync(globpath);
 for (let page of _pages){
 pages.push({
  static:glob.sync(path.join(__dirname, '..', page) + '/static')[0], //各个static目录绝对路径
  name:path.basename(page),
  html:glob.sync(page + '/app.html')[0],
  js:page + '/app.js',
 })
 }
 return pages;
};

globpath 就是你要更新的文件,例如:const globpath = ‘./src/pages/*'; 说明所有文件,这里我只是需要personCenter1下的文件,如果你开发另一个功能,那就把路径改为另一个文件路径,至此,解决。不足之处欢迎指出。

以上这篇vue-cli 关闭热更新操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js showModalDialog弹出窗口实例详解
Jan 07 Javascript
node.js中的fs.readdirSync方法使用说明
Dec 17 Javascript
Javascript中this关键字的一些小知识
Mar 15 Javascript
JavaScript中的函数声明和函数表达式区别浅析
Mar 27 Javascript
jQuery动态背景图片效果实现方法
Jul 03 Javascript
AngularJs bootstrap搭载前台框架——基础页面
Sep 01 Javascript
jQuery实现的放大镜效果示例
Sep 13 Javascript
使用JavaScript实现alert的实例代码
Jul 06 Javascript
JS实现左边列表移到到右边列表功能
Mar 28 Javascript
vue webpack实用技巧总结
Apr 24 Javascript
layer.close()关闭进度条和Iframe窗的方法
Aug 17 Javascript
Vue项目中使用better-scroll实现一个轮播图自动播放功能
Dec 03 Javascript
Node.JS如何实现JWT原理
Sep 18 #Javascript
浏览器JavaScript调试功能无法使用解决方案
Sep 18 #Javascript
js将日期格式转换为YYYY-MM-DD HH:MM:SS
Sep 18 #Javascript
js实现手表表盘时钟与圆周运动
Sep 18 #Javascript
javascript实现智能手环时间显示
Sep 18 #Javascript
javascript实现打砖块小游戏(附完整源码)
Sep 18 #Javascript
js实现拖拽与碰撞检测
Sep 18 #Javascript
You might like
php获取随机数组列表的方法
2014/11/13 PHP
Symfony2获取web目录绝对路径、相对路径、网址的方法
2016/11/14 PHP
Laravel中服务提供者和门面模式的入门介绍
2017/11/06 PHP
JavaScript 解析读取XML文档 实例代码
2009/07/07 Javascript
javascript面向对象编程(一) 实例代码
2010/06/25 Javascript
javascript hashtable 修正版 下载
2010/12/30 Javascript
Javascript中的包装类型介绍
2015/04/02 Javascript
Js得到radiobuttonlist选中值的两种方法(推荐)
2016/08/25 Javascript
windows下vue-cli及webpack搭建安装环境
2017/04/25 Javascript
详解Angular 4.x Injector
2017/05/04 Javascript
BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤
2017/08/07 Javascript
javascript实现QQ空间相册展示源码
2017/12/12 Javascript
vue.js实现标签页切换效果
2018/06/07 Javascript
[jQuery] 事件和动画详解
2019/03/05 jQuery
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
2019/08/15 Javascript
vue使用高德地图点击下钻上浮效果的实现思路
2019/10/12 Javascript
ElementUI 修改默认样式的几种办法(小结)
2020/07/29 Javascript
Vue自定义组件双向绑定实现原理及方法详解
2020/09/03 Javascript
python使用rabbitmq实现网络爬虫示例
2014/02/20 Python
操作Windows注册表的简单的Python程序制作教程
2015/04/07 Python
python fabric使用笔记
2015/05/09 Python
全面理解Python中self的用法
2016/06/04 Python
Python中的日期时间处理详解
2016/11/17 Python
Python装饰器知识点补充
2018/05/28 Python
python try 异常处理(史上最全)
2019/03/07 Python
Django继承自带user表并重写的例子
2019/11/18 Python
python opencv实现信用卡的数字识别
2020/01/12 Python
Django后台管理系统的图文使用教学
2020/01/20 Python
python实现将列表中各个值快速赋值给多个变量
2020/04/02 Python
德国宠物用品、宠物食品及水族馆网上商店:ZooRoyal
2017/07/09 全球购物
代理协议书
2014/04/22 职场文书
体育活动总结
2015/02/04 职场文书
创业不要错过,这4种餐饮新模式
2019/07/18 职场文书
浅析InnoDB索引结构
2021/04/05 MySQL
Python3中最常用的5种线程锁实例总结
2021/07/07 Python
纯CSS如何禁止用户复制网页的内容
2021/11/01 HTML / CSS