webpack 从零开始 -05 -热模块替换

125 阅读1分钟

本文代码github地址:戳我

启用HMR (模块热替换 Hot Module Replacement 或 HMR)

修改webpack.congig.js

...
const webpack = require('webpack');
...
module.exports = {
  devServer: {
    contentBase: "./dist",
    hot: true,
  },
  plugins: [
    ...
    new webpack.HotModuleReplacementPlugin(),
  ],
}

官方文档上的new webpack.NamedModulesPlugin() 已经被弃用了,所以就不要管他了

HMR 修改样式表

我们已经安装了样式表相关的loader,所以现在直接配置就可以用了 修改webpack.config.js

...
module.exports = {
  ...
  module: {
    rules: [
      {
        test: /\.css$/,
        use: ["style-loader", "css-loader"],
      },
    ],
  },
  ...
}
...

然后再添加一个样式表在index.js 内引入样式表,npm start 启动项目后,更换、添加样式表,就可以实现模块热替换了。