[英]Webpack HMR for Node.js
我使用webpack
來捆綁我的 nodejs 代碼。 眾所周知,我們可以使用webpack-dev-server
搭建開發環境,那么nodejs呢? 我知道nodemon
可以工作,但它會重新啟動整個項目,我想要一種 HMR 方式。
你可以按照這個:
npm i --save-dev webpack-node-externals run-script-webpack-plugin webpack
webpack-hmr.config.js
文件並將其放入:
const nodeExternals = require('webpack-node-externals');
const { RunScriptWebpackPlugin } = require('run-script-webpack-plugin');
module.exports = function (options, webpack) {
return {
...options,
entry: ['webpack/hot/poll?100', options.entry],
externals: [
nodeExternals({
allowlist: ['webpack/hot/poll?100'],
}),
],
plugins: [
...options.plugins,
new webpack.HotModuleReplacementPlugin(),
new webpack.WatchIgnorePlugin({
paths: [/\.js$/, /\.d\.ts$/],
}),
new RunScriptWebpackPlugin({ name: options.output.filename }),
],
};
};
main.js
里面:async function bootstrap() {
<Your Express middleware and etc>
if (module.hot) {
module.hot.accept();
module.hot.dispose(() => server.close());
}
}
靈感來自Nest.js HMR
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.