对于上下文,让我尝试多解释一下。
在我的项目中,我有一个文件夹,例如,用于组件。在该文件夹中,我有我的组件文件和一个 index.js 文件,我在其中导入所有组件并导出,而不是在同一行中,如下所示:
export { default as Button } from './button'
export { default as Loader } from './loader'
export { default as ImageBackground } from './image-background'
所以我可以像这样在屏幕组件中导入这些组件:
import { Button, Loader, ImageBackground } from 'src/components'
如果我编辑组件文件,保存并重新加载项目,一切正常。
问题是,当我在激活热模块替换(热重载)的情况下编辑任何这些组件时,当它在编辑后被触发时,它会引发以下错误:
未处理的 JS 异常:需要模块“src/components/index.js”,引发异常:TypeError:无法重新定义属性:按钮
有谁知道为什么会这样?
提前致谢!
Obs:当我直接导入组件而不使用 index.js 或者如果在 index.js 中,我首先导入组件,然后将组件分配给一个变量,然后导出这个变量,它工作正常。