Dan*_*ker 3 javascript express webpack html-webpack-plugin webpack-dev-middleware
所以我使用webpack dev中间件如下:
const compiledWebpack = webpack(config),
app = express(),
devMiddleware = webpackDevMiddleware(compiledWebpack, {
historyApiFallback: true,
publicPath: config.output.publicPath,
overlay: {
warnings: true,
errors: true
},
compress: true,
stats: { colors: true }
})
app.use(devMiddleware)
app.get('*', (req, res) => {
// Here is it! Get the index.html from the fileSystem
const htmlBuffer = devMiddleware.fileSystem.readFileSync(`${config.output.path}/index.html`)
res.send(htmlBuffer.toString())
})
app.listen(PORT, function () {})
console.log('Running on port ' + PORT)
Run Code Online (Sandbox Code Playgroud)
但是,出于某种原因,我没有得到实时重装.我也没有获得叠加功能.我正在使用此设置,因为我使用的是webpackhtmlplugin.
我觉得我在这里错过了一个简单的概念:(任何想法?
Mic*_*ngo 11
对于实时重新加载,您还需要添加webpack-hot-middleware.
在您的服务器中,您必须添加:
const webpackHotMiddleware = require('webpack-hot-middleware');
const hotMiddleware = webpackHotMiddleware(compiledWebpack);
app.use(hotMiddleware);
Run Code Online (Sandbox Code Playgroud)
您还需要在webpack配置中添加'webpack-hot-middleware/client'您的条目和webpack.HotModuleReplacementPlugin插件:
entry: [
'webpack-hot-middleware/client',
'./src/index.js' // Your entry point
],
plugins: [
new webpack.HotModuleReplacementPlugin()
]
Run Code Online (Sandbox Code Playgroud)
欲了解更多信息,请参阅安装和使用.
| 归档时间: |
|
| 查看次数: |
2219 次 |
| 最近记录: |