是否可以使用Sencha CMD将框架从应用程序中分离出来,同时将所有ExtJS代码保留在索引文件之外



我正在用ExtJS 6和Sencha CMD 6.5.4构建一个应用程序。

我在应用程序的index.html中运行了一些自定义脚本,我想将所有ExtJS限制在Sencha CMD生成的缩小包中,并将所有引导程序代码排除在索引文件之外。我通过关注这篇文章并将其放在app.json:中,成功地做到了这一点

"output": {
"base": "${workspace.build.dir}/${build.environment}/${app.name}",
"microloader": {
"path": "microloader.js",
"embed": false,
"enable": false
}
},

我还想将ExtJS框架拆分为一个单独的捆绑包,并将其和自定义应用程序捆绑包作为index.html中的脚本标记进行引用。我通过关注这篇文章并将其放在app.json:中,成功地做到了这一点

"output": {
...
"framework": {
"enable": true
}
}

问题:有可能同时完成这两件事吗?如果我同时尝试两者,CMD会将Boot.js模块插入到我的自定义应用程序捆绑包中,而不是框架捆绑包中。框架捆绑包需要首先在客户端中加载,但由于尚未定义Ext.Boot,它失败并出现JS错误。

有没有办法让CMD将Ext.Boot代码插入framework.js捆绑包的开头,而不是插入自定义应用程序捆绑包?它可能可以通过让CMD做它想做的事情来解决,并创建自己的index.html文件,该文件包含独立于任何一个捆绑包的Ext.Boot的内联定义,但如果可能的话,我有避免这种情况的说明。

app.json的Sencha CMD指南似乎相当不完整——我不知道在哪里可以找到关于该文件所有可用选项的清晰、完整的文档。

试试这个

"base": "../",
"page": "index.html",
"manifest": "${build.id}.json",
"js": "${build.id}/app.js",
"appCache": {
"enable": false
},
"resources": {
"path": "${build.id}/resources",
"shared": "resources"
}
},

最新更新