正如标题所暗示的,当我准备好托管生产代码时,我是否应该从服务器代码中删除webpack-dev-middleware和webpack-hot-middleware的所有用法,因为它们是dev-dependencies?设置它的最好方法是什么,这样我就不必担心这个了?
这是我的服务器代码的快照:
// webpack -> HMR
const webpack = require("webpack");
const webpackConfig = require("../webpack.config");
const compiler = webpack(webpackConfig);
// webpack HMR init
app.use(
require("webpack-dev-middleware")(compiler, {
noInfo: false,
publicPath: webpackConfig.output.publicPath,
})
);
app.use(require("webpack-hot-middleware")(compiler));
...
app.get("/", async (req, res) => {
const initialContent = await serverRender();
res.render("index", {
...initialContent,
});
});
app.listen(port, () => {
console.log(`Express application listening on port ${port}`);
});发布于 2019-06-01 06:37:01
您应该将您的HMR代码(或者实际上,任何特定于开发/环境的设置)封装到它自己的区域中。我不建议将其从您的代码中删除,因为您可能会返回到应用程序并希望更新某些内容。拥有HMR是一个很好的享受,所以我只想让你的代码嗅探出环境,如果它是开发的,运行相关的代码。否则,不要运行它。
https://stackoverflow.com/questions/56402209
复制相似问题