0

我们有一个基于 Sencha ExtJS7 的经典应用程序,它使用需要单独加载大量 js 文件的包(无法捆绑读取)。所以我们通过package.json js配置加载它们

    "js": [
        {
            "path": "${package.dir}/resources/ace-builds-master/src-min-noconflict/ace.js"
        },
        {
            "path": "${package.dir}/resources/ace-builds-master/src-min-noconflict/theme-monokai.js"
        },

        <snipped................>

所以有很多文件要单独加载,不应该捆绑成一个

在生产/测试构建时,这些文件在应用程序功能之前加载。

有没有办法在需要它们的面板添加到屏幕时或在应用程序加载并开始工作后延迟它们时加载这些文件

4

1 回答 1

0

首先,如果您想这样做,您不能将 javascript 捆绑到您的应用程序中;所有捆绑的代码都将作为应用程序引导的一部分加载。

其次,有一些普通的 JS 方法可以加载更多的脚本代码,但是使用 ExtJS 的方法是Ext.Loader#loadScript

如果这些是 ExtJS 包(而不是任意 NPM 包),另一种方法是在 'uses' 部分中声明这些包app.json,这将允许您使用Ext.Package#load动态加载它们

于 2020-04-10T20:54:57.557 回答