我使用 Ext JS 4 创建了一个应用程序。controllers
我的财产app.js
仅包含主控制器:
Ext.application({
name: 'MyApp',
appFolder: 'app',
controllers: [
"main.App"
],
loadController: function(controller) {
var oController = this.getController(controller);
oController.init(this);
oController.onLaunch(this);
}
});
MyApp.main.App
控制器按名称加载其他控制器获取控制器()方法(参见 loadController() 方法)。这些控制器是动态加载的,并且没有在我的列表中列出index.html
file.
为了生成部署到服务器的生产版本,我通过在应用程序文件夹中发出以下命令来使用 Sencha Cmd:
sencha app build
工具正常完成并将所有文件压缩为一个大的 all-classes.js。问题是我的动态加载的控制器不包含在该文件中。
哪种方法是使动态加载的控制器(总共超过 100 个)由 Sencha Cmd 缩小和处理的正确方法?
我知道,我可以将它们列在我的app.js
,或包含在某些文件中使用Ext.require
,但我正在寻找正确的方法,以便在我的构建中自动包含 100 多个不同的控制器、视图、模型和存储。我相信 Ext JS 的其他用户正在创建大型应用程序并正在以某种方式构建,我将不胜感激任何建议或只是success stories
,这将帮助我找到正确的构建方法。
我会将所有控制器放入uses大批。这些应该迫使工具跟踪它们并将它们包含到构建中。另一方面uses不要求类在定义时可用,但保证它们在定义时可用onReady(一个在应用程序内)调用块。
请注意,您需要在
使用数组!
我不使用构建工具,因此我无法测试它,但它应该可以工作。
根据评论更新 提供的示例@bhovhannes
博夫哈内斯:我在 build.xml 中添加了一段代码,它收集了所有名称
当我构建 sencha 应用程序时,我的控制器进入使用数组。这样我
开发时在uses数组中不填任何内容,只需添加控制器
进入控制器文件夹,因为它们都是从动态加载的
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)