我有一个非常粗略的实施工作:
var screens = {
a: require('./../react_components/screens/a.jsx'),
b: require('./../react_components/screens/b.jsx'),
c: require('./../react_components/screens/c.jsx'),
d: require('./../react_components/screens/d.jsx'),
e: require('./../react_components/screens/e.jsx')
};
哪个工作正常,但是,我想让它更具可伸缩性,这样当我更改文件名或将新文件添加到/screens
文件夹时,我真的不需要不断更新此require
语句列表。
我正在使用Browserify,所以我确实有一个构建步骤,如果需要可以挂钩(这将在浏览器中运行)
答案 0 :(得分:0)
因此,对于node / commonjs本身,有requireindex等模块会自动执行此类操作。但是,这些方法通过查看文件系统来确定运行时的依赖性这一事实会破坏browserify的静态分析,因此我不知道它们中的任何一个是浏览器兼容的。因此,我建议使用代码生成路径,您可以使用glob之类的模块来发现要导出的文件,然后写出一个完整的.js
文件,其中所有的导出都是静态编码的,并指向该文件的browserify,您可以在构建步骤中每次重新生成。