目前我正在构建一个 JS 库,它可以附加到任何 HTML5 Canvas 元素上下文并与之交互。
但是,该项目开始变得越来越庞大,包含大量文件和数千行代码。每个文件代表一个不同的对象/模块。每个文件目前都是这样布局的,我真的很想保留这种风格的一些外观:
Object = function() {
// constructor
}
Object.prototype.method1 = function() {
// Logic
}
Object.prototype.method2 = function() {}; // .... etc
在 HTML 的开发版本中,我有一个 bajillion 脚本标签(每个文件一个)需要以精确的顺序(用于依赖项)。我意识到这是非常低效的,而且不太容易维护。但是我不确定尝试使我的项目更易于构建和维护的最佳方向是什么。为了方便工具和 CommonJS 模块系统而移植到 NodeJS?转换为 RequireJS?我刚开始阅读 Grunt,它对我的情况有用吗?
改进我的组织和引入某种构建系统都是我推迟了一段时间的事情。我现在后悔了。
最佳答案
你需要一个模块系统。
RequireJS 和 RequireJS 优化器是这里的规范解决方案。您可以使用 browserify如果你更倾向于 Node.js,或者如果你不喜欢 AMD 的 cruft (define(function (require, exports, module) { ... }));
)---可能与Cajon结合开发中。
像 Grunt 这样的构建工具并不是这里最重要的因素。这主要在你有多个构建步骤时有用——例如,运行 RequireJS 优化器,然后将你的 SASS 编译为原始 CSS,然后连接 CSS,然后将你的图像转换为 Sprite ,然后......等等。
关于javascript - 如何使我的 JavaScript 项目更易于管理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14718799/