我正在尝试创建一个可以导入类似模块的索引文件。
例如
import { foo } from './random';
// or
import bar from './random';
所以我在random/
中有index.js文件
import bar from './bar';
import foo from './foo';
export {
foo
};
export default DefaultSurvey;
效果很好,但是我有一个小问题。
foo.js
扩展了bar.js
import './Foo.scss';
export default class Foo extends Bar
问题出在这里:
import foo from './foo';
如果我尝试import bar from './random';
foo.js
中的css适用于默认导出。为什么?
答案 0 :(得分:0)
首先,为什么这是一个问题?难道不是所有的CSS加载?除非,您想有条件地加载某些css文件,这是另一个问题。
也许我的问题全都错了,如果可以的话,请纠正我,但是当您从random/
,即import bar from './random';
导入默认导出时,您还将在其中执行所有导入模块,即导入所有依赖项。由于您要在foo from './foo';
模块中导入random/
,并在foo.js
中导入css,因此在引用random/
模块时将加载这些依赖项。
为避免循环依赖,我建议将所有导入的css文件放入一个文件,例如索引文件。这样,您就可以避免意外的行为。