我希望现代化我们的JavaScript架构 - 更重要的是,开始为我们的JavaScript代码编写单元测试。
我一直在从不同的问题/博客中拼凑信息,并制定了一个暂定的计划。但是,我真的不确定我是否走在正确的轨道上。
全球对象:
// myProject.js
// --------------------
var MyProject = {};
// component1.js
// --------------------
myProject.component1 = {};
到require()模块:
// myProject.js
// --------------------
var component1 = require('./component1');
modules.export = { component1 };
// component1.js
// --------------------
var component1 = {};
modules.exports = component1;
如果项目使用全局对象命名空间组件,我如何重构这些JavaScript文件以导出将在节点中工作的模块?上述计划是否遵循JavaScript依赖关系/模块的现代标准?
我主要担心的是我的index.js(或主条目)文件将成为维护噩梦(将每个新文件添加为require())。
答案 0 :(得分:1)
您的index.js应该只需要核心入口点(如顶级组件)。
间接需要其他文件。
因此,您不应该有任何所有文件的巨型列表;每个文件应该只需要它直接使用的东西。
Browserify将汇编所有require()d文件的传递闭包。