Javascript 网页包热重新加载未更新还原程序
我正在运行用于express的webpack热重新加载和webpack dev服务器中间件 我的网页包配置:Javascript 网页包热重新加载未更新还原程序,javascript,webpack,webpack-dev-middleware,webpack-hot-middleware,Javascript,Webpack,Webpack Dev Middleware,Webpack Hot Middleware,我正在运行用于express的webpack热重新加载和webpack dev服务器中间件 我的网页包配置: const webpackConfig = { entry: [ project.app.entry, ], output: { path: project.path.out, filename: 'bundle.js', publicPath: '/', }, module: {
const webpackConfig = {
entry: [
project.app.entry,
],
output: {
path: project.path.out,
filename: 'bundle.js',
publicPath: '/',
},
module: {
rules: [],
},
plugins: [
new webpack.NoEmitOnErrorsPlugin(),
new webpack.optimize.OccurrenceOrderPlugin(),
new webpack.HotModuleReplacementPlugin(),
new webpack.DefinePlugin({
'process.env': {
NODE_ENV: JSON.stringify(process.env.NODE_ENV),
},
}),
],
devtool: DEV ? 'source-map' : false,
};
我的index.js
import React from 'react';
import ReactDom from 'react-dom';
import { Provider } from 'react-redux';
import { BrowserRouter as Router } from 'react-router-dom';
import App from './containers/App';
import store from './store';
const MOUNT_NODE = document.getElementById('root');
function render() {
ReactDom.render(
<Provider store={store}>
<Router>
<App />
</Router>
</Provider>
, MOUNT_NODE);
}
if (process.env.NODE_ENV === 'development' && module.hot) {
module.hot.accept('./containers/App', () => render());
module.hot.accept('./reducers/index.js', () => {
console.log('Accepted');
store.replaceReducer(require('./reducers').default);
render();
});
}
render();
从“React”导入React;
从“react dom”导入react dom;
从'react redux'导入{Provider};
从“react Router dom”导入{BrowserRouter as Router};
从“./containers/App”导入应用程序;
从“./store”导入存储;
const MOUNT_NODE=document.getElementById('root');
函数render(){
ReactDom.render(
,MOUNT_节点);
}
if(process.env.NODE_env==='development'&&module.hot){
module.hot.accept('./containers/App',()=>render());
module.hot.accept('./reducers/index.js',()=>{
console.log(“已接受”);
store.replaceReducer(require('./reducers')。默认值);
render();
});
}
render();
Webpack后来添加了更多配置:eslint、babel loader等。不过我认为它不会改变任何东西。
当我更新我的一个减速器时,仍然会出现以下错误
无法热更新以下模块:(需要完全重新加载)
./client/reducers/user.js
reducer/index.js
但是,当我重新加载App.js文件中的组件时,它工作正常,而App.js文件也是热加载的。如何解决此问题