【发布时间】:2018-03-14 04:50:21
【问题描述】:
我想在不一个一个添加文件的情况下热重载所有反应组件。
module.hot.accept(['react/a', 'react/b', 'react/c'], function (){})
在我的项目中,我使用require.context 来让所有 js 文件热重载。
'user strict';
import React from 'react';
import ReactDOM from 'react-dom';
import A from 'a'
ReactDOM.render(<A/>, document.getElementById('hello'))
var context = require.context("react", true, /\.js$/);
if (module.hot) {
module.hot.accept(context.id, function () {
var reloadedContext = require.context("react", true, /\.js$/);
ReactDOM.render(<A/>, document.getElementById('hello'))
});
}
但由于我从“a”导入了 A,文件 a.js 不再是可热重载的。而文件 b.js 和 c.js 仍然是可热重载的。
我不确定require.context 是如何工作的,以及为什么导入的文件不能热重载。
这是我的示例项目,您可以分叉并复制我的问题。请给我一些建议谢谢!
https://github.com/flik930/webpack-hot-module-reload-with-context-example
【问题讨论】:
标签: reactjs webpack react-hot-loader hot-reload