美文网首页
4.6.1 优化模块热替换

4.6.1 优化模块热替换

作者: 柠檬与断章 | 来源:发表于2019-11-27 11:45 被阅读0次

4.6.1 优化模块热替换

问题一:优化模块热替换?

在发生模块热替换时,你会在浏览器的控制台中看到类似这样的日志:


image

其中的Updated modules: 68是指 ID 为68的模块被替换了,这对开发者来说很不友好,因为开发者不知道 ID 和模块之间的对应关系,最好是把替换了的模块的名称输出出来。 Webpack 内置的 NamedModulesPlugin 插件可以解决该问题,修改 Webpack 配置文件接入该插件:

const NamedModulesPlugin = require('webpack/lib/NamedModulesPlugin');

module.exports = {
  plugins: [
    // 显示出被替换模块的名称
    new NamedModulesPlugin(),
  ],
};

重启构建后你会发现浏览器中的日志更加友好了:

image

除此之外,模块热替换还面临着和自动刷新一样的性能问题,因为它们都需要监听文件变化和注入客户端。 要优化模块热替换的构建性能,思路:监听更少的文件,忽略掉node_modules目录下的文件。 但是其中提到的关闭默认的 inline 模式手动注入代理客户端的优化方法不能用于在使用模块热替换的情况下, 原因在于模块热替换的运行依赖在每个 Chunk 中都包含代理客户端的代码。

相关文章

  • 4.6.1 优化模块热替换

    4.6.1 优化模块热替换 问题一:优化模块热替换? 在发生模块热替换时,你会在浏览器的控制台中看到类似这样的日志...

  • webpcak HMR原理

    模块热替换(hot module replacement) 模块热替换(HMR - Hot Module Repl...

  • webpack性能优化热词

    仅供查询关键名词 A,开发环境 1,HMR 热模块替换 2,source-map 优化调试 【可对生产和开发...

  • webpack之热更新/替换

    模块热替换(HMR)什么是模块热替换HMR(Hot Module Replacement),在应用程序运行过程中,...

  • webpack学习配置笔记(二)

    千里之行,始于足下! 模块热替换 模块热替换(Hot Module Replacement 或 HMR)是 web...

  • webpack 热更新

    模块热替换 HMR 基本概念 模块热更新 hot module replacement: 在应用程序运行过程中替换...

  • 4.6 热模块替换

    4.6 热模块替换问题一:模块热替换原理? 原理是当一个源码发生变化时,只重新编译发生变化的模块,再用新输出的模块...

  • webpack模块热替换

    概念 在程序运行时可以进行增加、删除、修改模块而无需重新加载整个页面 效果: 保留在完全重新加载页面期间丢失的应用...

  • webpack HMR热更新

    1. 介绍 HMR(Hot Module Replacement):模块热替换,也叫模块热更新,解决自动刷新导致...

  • 热重载、热更新

    热更新/ 热模块替换 hot module replacement 热更新:浏览器的无刷新更新(即webpack里...

网友评论

      本文标题:4.6.1 优化模块热替换

      本文链接:https://www.haomeiwen.com/subject/ospxictx.html