一、clean-webpack-plugin:

在每次生成dist目录前,先删除本地的dist文件(每次自动删除太麻烦)

1、安装clean-webpack-plugin   npm/cnpm i clean-webpack-plugin --save -dev

2、在我们的webpack.config.js文件中引入

const  cleanWebpackPlugin=require('clean-webpack-plugin');

然后在plugs中进行配置

plugins:[

new CleanWebpackPlugin(['dist']), //传入数组,指定要删除的目录

]

二、HotModuleReplacementPlugin

启用[热替换模块(Hot Module Replacement)],也被称为 HMR。

永远不要在生产环境(production)下启用 HMR

基本用法(Basic Usage)

启用 HMR 非常简单,在大多数情况下也不需要设置选项。

new webpack.HotModuleReplacementPlugin({  // Options...})

选项(Options)

包含如下选项:

  • multiStep (boolean):设置为true时,插件会分成两步构建文件。首先编译热加载 chunks,之后再编译剩余的通常的资源。
  • fullBuildTimeout (number):当 multiStep 启用时,表示两步构建之间的延时。
  • requestTimeout (number):下载 manifest 的延时(webpack 3.0.0 后的版本支持)。

这些选项属于实验性内容,因此以后可能会被弃用。就如同上文所说的那样,这些选项通常情况下都是没有必要设置的,仅仅是设置一下 new webpack.HotModuleReplacementPlugin() 在大部分情况下就足够了。

webpack.config.js

const path = require("path");
const HtmlWebpackPlugin = require('html-webpack-plugin');
const CleanWebpackPlugin = require('clean-webpack-plugin');
const Webpack = require('webpack');//1热更新
module.exports = {
// entry:\['./src/index.js','./src/index2.js'\],
entry:{
index:'./src/index.js',
index2:'./src/index2.js'
},
output:{
path:path.resolve(__dirname,'dist'),
filename:'\[name\].boundle.js'
},         //devServer
devServer:{
//设置服务器访问的基本目录
contentBase:path.resolve(__dirname,'dist'),
//服务器ip地址,localhost
host:'localhost',
port:8090,
open:true,//自动打开浏览器
hot:true//2热更新
}, plugins:\[
new Webpack.HotModuleReplacementPlugin(),//3热更新
new CleanWebpackPlugin(\['dist'\]),//删除dist
new HtmlWebpackPlugin({
minify:{
collapseWhitespace:true,//压缩空白
removeAttributeQuotes:true//删除属性双引号
},
hash:true,//消除缓存,添加版本号
template: './src/index.html',//模板地址
title: ' Webpack4.x ',
filename: 'index.html',//生成多个页面
chunks:\['index'\]//多页面分别引入自己的js
}),
new HtmlWebpackPlugin({
hash:true,
template:'./src/index2.html',
title: '第二个页面',
filename:'index2.html',
chunks:\['index2'\]
})
\] }

Webpack 多html入口、devServer、热更新配置的更多相关文章

  1. [转] webpack热更新配置小结

    webpack热更新配置 热更新,可以使开发的人在修改代码后,不用刷新浏览器即可以看到修改后的效果.而它的另一个好处则是可以只替换修改部分相关的代码,大大的缩短了构建的时间. 热更新一般会涉及到两种场 ...

  2. webpack开启本地服务器与热更新

    第一个webpack本地服务 webpack本地服务相关的一些操作指令与应用 一.第一个webpack本地服务 //工作区间 src//文件夹 index.js//入口文件 index.css//测试 ...

  3. vue-cli3热更新配置,解决热更新失败的问题,保存代码浏览器自动刷新

    在vue,config.js中配置css热更新 const IS_PROD = ['production', 'test'].includes(process.env.NODE_ENV) css: { ...

  4. idea热更新配置

    idea部署热启动如下,经过本人实验 在这里只能选择exploded因为它支持热部署 在这里选择如下 到这里已经完成热部署了,如果有问题欢迎反馈给我,我会及时回复

  5. spring boot 热更新配置

    maven添加 spring-boot-devtools 允许自动构建 设置里面,搜索compiler,在Build,Execution,Deployment里面勾选Build project aut ...

  6. webpack快速入门——配置文件:入口和出口,多入口、多出口配置

    1.在根目录新建一个webpack.config.js文件,然后开始配置: const path = require('path'); module.exports={ //入口文件的配置项 entr ...

  7. koa和egg项目webpack热更新实现

    背景 在用Node.js+Webpack构建的方式进行开发时, 我们希望能实现修改代码能实时刷新页面UI的效果. 这个特性webpack本身是支持的, 而且基于koa也有现成的koa-webpack- ...

  8. YARP+AgileConfig 5分钟实现一个支持配置热更新的代理网关

    YARP 是微软开源的一个反向代理项目,英文名叫 Yet Another Reverse Proxy .所谓反向代理最有名的那就是 nginx 了,没错 YARP 也可以用来完成 nginx 的大部分 ...

  9. 利用TinyXml进行数据库的热更新

    TinyXml库比较小,但功能较为完善,挺适合用来读取小块的xml文件; 我写了几个利用TinyXml读取和保存数据的例子,大家可以参考使用; 主要是为了热更新配置所做的一些函数应用; //开始热更 ...

随机推荐

  1. git下载

    git快速下载地址:https://github.com/waylau/git-for-win

  2. Nginx_配置文件nginx.conf配置详解

    user nginx nginx ; # Nginx用户及组:用户 组.window下不指定 worker_processes 8; # 工作进程:数目.根据硬件调整,通常等于CPU数量或者2倍于CP ...

  3. Python中*args 和**kwargs作为形参和实参时的功能详解

    *args 和**kwargs作为形参 *args 和**kwargs作为形参被称为不定长参数,用来处理超出必备参数部分的参数.注意:args和kwargs可以修改为其它变量名. 必备参数就是在定义函 ...

  4. centos7 配置JDK

    // 查看是否有jdk  rpm -qa | grep java 卸载掉系统自带的jdk(箭头标识),命令:rpm -e --nodeps  后面跟系统自带的jdk名 比如:rpm -e --node ...

  5. 用Less 的 js方式替代 bootStrap 里 [class*=”span”]

    Bootstrap 里的 grid system 里面 (源代码) 有这么一段, [class*="span"] { float: left; margin-left: @grid ...

  6. SCALA-基础知识学习(一)

    概述 本人开始学习scala的时候,是在使用和开发spark程序的时候,在此为了整理.记录和分享scala的基础知识,我写这篇关于scala的基础知识,希望与广大读者共同学习沟通进步.如果有些代码比较 ...

  7. 【Java】代码块

    代码块 代码块的作用:用来初始化类.对象 代码块如果有修饰的话,只能使用static 分类:静态代码块.非静态代码块 静态代码块 static{ } 内部可以有输出语句 随着类的加载而执行,而且只执行 ...

  8. css中两种居中方式text-align:center和margin:0 auto 的使用场景

    关于使用text-align:center和margin:0 auto 两种居中方式的比较 前言:最近由于要学习后端,需要提前学习一部分前端知识,补了补css知识,发现狂神在讲这一部分讲的不是特别清楚 ...

  9. linux 安装 Logtash 同步mysql数据到Elasticsearch

    官网下载Logtash 离线安装包 下载地址 https://www.elastic.co/cn/downloads/logstash 需要注意版本与es 对应 新建配置文件 新建文件夹 mkdir  ...

  10. leetcode 102. 二叉树的层次遍历 及 103. 二叉树的锯齿形层次遍历

    102. 二叉树的层次遍历 题目描述 给定一个二叉树,返回其按层次遍历的节点值. (即逐层地,从左到右访问所有节点). 例如: 给定二叉树: [3,9,20,null,null,15,7], 3 / ...