Reactjs 热模块更换不适用于某些模块
我对react hot loader 3有问题 我的应用程序中的一些模块得到了热更新,但有些模块没有。我有一个文件夹(应用程序),其中包含我的所有组件。在这个文件夹中,我有index.js,在这里我从文件夹中导出所有模块。在文件夹中,我有导出组件本身的Reactjs 热模块更换不适用于某些模块,reactjs,webpack,react-hot-loader,hot-module-replacement,Reactjs,Webpack,React Hot Loader,Hot Module Replacement,我对react hot loader 3有问题 我的应用程序中的一些模块得到了热更新,但有些模块没有。我有一个文件夹(应用程序),其中包含我的所有组件。在这个文件夹中,我有index.js,在这里我从文件夹中导出所有模块。在文件夹中,我有导出组件本身的index.js文件。 例如: app/test包含test.js和index.js app/test/index.js包含从./test.js导出测试的 app/index.js包含export*as test from./test 在我的应用程
index.js
文件。
例如:
app/test
包含test.js
和index.js
app/test/index.js
包含从./test.js导出测试的
app/index.js
包含export*as test from./test
在我的应用程序的某个地方,我像这样导入这个测试应用程序,import{test}from../app
在这里,魔术出现了。hmr不适用于test.js。但如果我在app/index.js
中注释行export*as test from./test
,然后直接导入测试组件import test from../app/test/test.js
hmr工作。我已经试着修了三天了app/index.js
被导入到我的routes.js
文件中。这是唯一一个进口的地方。只有app
文件夹中的所有组件都不会得到热更新,除非它工作正常。我试图用任何样板复制它,但没有成功
在控制台里我看到了
[WDS] App updated. Recompiling...
log-apply-result.js?d762:11 [HMR] The following modules couldn't be hot updated: (They would need a full reload!)
log-apply-result.js?d762:18 [HMR] Nothing hot updated.
only-dev-server.js?2f87:49 [HMR] App is up to date.
client?e36c:37 [WDS] App updated. Recompiling...
client?e36c:37 [WDS] Nothing changed.
问题在于文件夹的结构。循环依赖项在hmr中失败。修复它解决了问题。是的,这也修复了我的代码,愚蠢的错误。始终检查代码的循环依赖关系