ES6模块:如何从index.js自动重新导出当前目录中的所有类型?

时间:2018-05-21 01:26:50

标签: javascript react-native ecmascript-6 flowtype commonjs

在我的React Native项目中,我有很多这样的代码散布在index.js个文件中:

import Restaurant from './Restaurant';
import Store from './Store';
import Vineyard from './Vineyard';
import Wine from './Wine';

export {
    Restaurant,
    Store,
    Vineyard,
    Wine
};

写出来是非常重复和乏味的。有没有办法可以从index.js自动重新导出当前工作目录中的所有其他文件? (注意我也在我的项目中使用Flow,因此任何解决方案都应该保留它可以推断的类型信息。)

感谢。

2 个答案:

答案 0 :(得分:1)

export * from './Restaurant';
export * from './Store';

通过使用上述语法,您可以访问每个组件的所有导出属性并直接导出它们。

当您对Actions内的每个Action文件中的所有index.js进行分组并直接导出时,这是一种常见模式。您可以查看github repo

答案 1 :(得分:0)

如果您愿意,也可以使用此模式:

export { default } from './Comp'
export { default as CompHeader } from './CompHeader'
export { default as CompContent } from './CompContent'

// Usage
import Comp, { CompHeader, CompContent } from './component/Comp'