【发布时间】:2012-02-09 08:24:52
【问题描述】:
非常感谢 Addy Osmani 和 Thomas Davis 发布他们的示例和样板文件 (http://backbonetutorials.com/organizing-backbone-using-modules,https://github.com/addyosmani/backbone-aura)。
他们对我的起步帮助很大。
我目前正在开发一个大型网络应用程序。所以我有很多组件,例如地址管理、日期管理、待办事项。每个组件都填充了我的应用程序中的整个空间(菜单栏除外)。每次选择菜单中的新组件都需要进行页面转换。
在开始时,我采用了上面教程使用的文件结构样板(将所有视图提供给“视图”目录)。但是随着更多组件的添加,将所有视图放入一个视图目录让我感到困惑。即使创建子目录也不是解决方案,因为在这个文件结构中,我丢失了哪个视图与哪个模型相关的信息。
所以我搜索了另一个解决方案,发现了 requirejs amd 包(http://requirejs.org/docs/api.html#packages)。 这对我帮助很大,因为属于同一组件(模型、集合、视图)的所有模块都进入了一个目录。因为用“模型”(等等)后缀每个模型,所以对我来说足够干净。
现在问题: 我正处于前期制作阶段。我没有为生产部署一起构建和连接事物。但现在我想尝试 requirejs 优化器。 我已阅读 James Burke 的“http://requirejs.org/docs/optimization.html”页面。但对我来说并非一切都清楚。
我想要的是以下内容:我有这些包目录。来自一个包目录的所有 amd 模块(视图、模型、集合)都应连接到一个文件中,但不应包含它们的依赖项,因为许多这些外部包依赖项在一开始是单独加载的。
有没有相同或类似要求的,已经迈出这一步的,可以给点提示。
非常感谢
沃尔夫冈
【问题讨论】:
-
我刚刚发布了一个开源工具包,希望它能像帮助我一样帮助其他人。它是许多开源工具的组合,它为您提供了一个开箱即用的 requirejs 主干应用程序。它提供单个命令来运行:dev web server、jasmine 单浏览器测试运行器、jasmine js-test-driver 多浏览器测试运行器,以及 JavaScript 和 CSS 的连接/缩小。它还输出应用程序的未缩小版本以进行生产调试,预编译您的车把模板,并支持 i18n。它只是工作。 github.com/davidjnelson/agilejs
标签: backbone.js requirejs js-amd