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

dwthyt8l  于 2022-11-05  发布在  其他
关注(0)|答案(1)|浏览(128)

我正在用ExtJS 6和 Sencha CMD 6.5.4构建一个应用程序。
我有一些自定义脚本在我的应用的index.html中运行,我希望将所有ExtJS限制在 Sencha CMD生成的迷你包中,将所有引导代码排除在索引文件之外。我已经成功地做到了这一点,方法是遵循this post并将其放在app.json中:

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

我还想将ExtJS框架拆分为一个单独的包,并在index.html中将其和自定义应用包作为脚本标记引用。我已经成功地做到了这一点,方法是遵循this post并将其放在app.json中:

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

问:是否有可能同时完成这两件事?如果我尝试同时完成这两件事,CMD会将Boot.js模块插入到我的自定义应用包中,而不是框架包中。框架包需要首先在客户端中加载,但它会失败并出现JS错误,因为Ext.Boot尚未定义。
有没有办法让CMD将Ext. Boot 代码插入framework.js包的开头,而不是自定义应用包的开头?这可能可以通过让CMD做它想做的事情来解决,并创建自己的index.html文件,其中包含独立于任何一个包的Ext.Boot的内联定义,但我再次说明,如果可能的话,要避免这种情况。
The Sencha CMD guide for app.json看起来相当不完整-我不确定在哪里可以找到清晰、完整的文档来说明此文件的所有可用选项。

643ylb08

643ylb081#

试试这个

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

相关问题