Webpack第三天

我们已经能打包能启动了,现在我们要继续开发。开发的时候我们要一直刷新才能出现,这很浪费时间,而webpack自带了热更新。

当然,在做热更新之前,我们需要引入一个插件,我试了,不引人插件实现不了热更新。

npm install html-webpack-plugin -D

这个插件主要是帮我们把js注入到html里面,如果我们不使用这个插件,直接在index里面script引入main.js,是可以运行,但是实现不了热更新,或许可以,只是本人没实现。

安装好了之后,直接在插件里面配置:

new HtmlWebpackPlugin({
 template: 'index.html',
}),

这是最简单的配置,更多可以自行百度。

安装了这个就可以实现热更新了,当然,仅限js改变的时候热更新。还有就是安装了这个,打包的时候还能帮你把index.html也打包进去,并且帮你引入。

之前没说,因为我们每次打包都会新生成一个js,所以用hash值,

5就是五位,默认是20位。

其实这时候的热更新还是有问题,你会发现,当你改了js的内容之后,是整个页面刷新。如果引用js文件过多,那每一次刷新对于开发的时候是比较浪费的,所以我们需要在devServer里面配置hot: true,然后在main.js里面配置:

if(module.hot){
 module.hot.accept();
}

这样就能实现改变哪个js就刷新哪个,而不是所有引入的都重新执行一遍,当然,main.js是会一直重新执行的。

可以做一下验证:

新建两个js,然后main.js里面:

require('./js/test.js')
require('./js/aaa.js')
console.log('测试')
if(module.hot){
 module.hot.accept();
}

用import也可以

然后在test.js和aaa.js里面个打印东西,修改aaa.js里面的打印,test.js的打印不会重新执行。

(完)

本文分享自微信公众号 - coding个人笔记(gh_2ce38b49dae1),作者:wade

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-09-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Vuex之结构

    之前整理了vuex的使用场景,现在开始学习学习怎么使用。我会根据官网api来重新学习一遍。

    wade
  • webpack(4.8.3)总结之一

    前言:webpack4从入门到高阶配置,本文先讲述webpack4的安装、基础配置、进阶配置,高阶配置放置下篇讲述。

    wade
  • webpack(4.8.3)总结

    前言:webpack4从入门到高阶配置,本文先讲述webpack4的安装、基础配置、进阶配置,高阶配置放置下篇讲述。

    wade
  • smartClient 1--框架介绍

        快速构建 大型企业应用开发(无需过多关注UI),适合基于云技术的应用,主要关注业务的发展和营销,加快开发进程

    用户1148399
  • 前端缓存

    https://juejin.im/post/5a098b5bf265da431a42b227

    城市中的游牧民族
  • smartClient 1--框架介绍

    一、是什么(以下简称SC)     smartClient 是一个基于web技术的开发框架,主要包括: 一个无需安装的 Ajax/HTML5 客户端引擎 UI组...

    用户1148399
  • 利用js文件反弹shell

    前两天在freebuf上看到一个利用Ink文件触发攻击链的文章,确实佩服作者的脑洞。

    洛米唯熊
  • 对于零基础同学来讲,javascript有多难掌握?

    你是零基础,那么你用什么方式,可以快速的实现js的运用自如呢? Javascript是一门脚本语言,它没有复杂的内存管理,只有一个进程,变量随便什么都可以储存...

    web前端教室
  • webpack多入口多出口的实现

    对古老的网站进行维护, 短时间内用react或vue组件化重写全部页面不太现实,但用webpack做个打包, 还是可行性的, 配置好webpack多入口多出口,...

    zhaoolee
  • JavaScript常用对象&属性&事件-图标

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

    奋飛

扫码关注云+社区

领取腾讯云代金券