我在Google上没有找到任何内容,但我想知道在目录和模块导出方面是否存在构建ES6项目的“最佳实践”。
目前我确实有两种不同的方式:
为每个模块使用index.js
并导出所有内容:
app.js
modules/
ModuleName/
ModuleFile.js
index.js
ModuleFile.js
看起来像export class ModuleFile { }
,index.js
只是
export * from 'ModuleFile'
这样就可以导入import {ModuleFile} from 'modules/ModuleName'
的文件。可读,但每个模块需要index.js
,即使模块只有一个文件。
第二种方法是不使用index.js
文件,但这意味着导入语句会略微多余import {ModuleFile} from 'modules/ModuleName/ModuleFile'
。
这个主题是否有最佳实践?
答案 0 :(得分:0)
你的方法似乎很好,我没有看到它的问题。在我工作过的两个不同的项目(不同的公司)中,使用的是模式。
您还可以将ModuleFile.js内容直接放在index.js中:
app.js
modules/
ModuleName/
index.js
或直接为模块创建文件:
app.js
modules/
moduleName.js
如果只需要“文件”。明显的问题是模块的变化或增长可能会迫使这种结构发生变化。在结构方面与其他模块也存在不一致。