Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将ExtJs应用加载到另一个ExtJs应用中_Javascript_Extjs - Fatal编程技术网

Javascript 将ExtJs应用加载到另一个ExtJs应用中

Javascript 将ExtJs应用加载到另一个ExtJs应用中,javascript,extjs,Javascript,Extjs,我正在开发一个大型企业应用程序,需要将模块(另一个ExtJs应用程序)延迟加载到主应用程序中。我正在尝试使用Ext.Loader加载其他应用程序的app.js: onTabChange: function (tabPanel, newCard, oldCard) { Ext.Loader.loadScript({ url: 'SecondaryApp/app.js', onLoad: function (obj) { console

我正在开发一个大型企业应用程序,需要将模块(另一个ExtJs应用程序)延迟加载到主应用程序中。我正在尝试使用Ext.Loader加载其他应用程序的app.js:

onTabChange: function (tabPanel, newCard, oldCard) {
    Ext.Loader.loadScript({
        url: 'SecondaryApp/app.js',
        onLoad: function (obj) {
            console.log('ok');
        },
        onError: function (obj) {
            console.log('ko');
        },
        scope: this
    });

    newCard.add({ xtype: 'secondarylist' });
}
回调没有问题,但是当我添加secondarylist组件时,抛出了“未捕获错误:[Ext.create]无法识别的类名/别名:widget.secondarylist”的异常。该部分是:

Ext.define('SecondaryApp.view.main.List', {
    extend: 'Ext.grid.Panel',
    xtype: 'secondarylist',

    title: 'Personnel',

    columns: [
        { text: 'Name',  dataIndex: 'name' },
        { text: 'Email', dataIndex: 'email', flex: 1 },
        { text: 'Phone', dataIndex: 'phone', flex: 1 }
    ]
});
我试图只编译和加载List.js,但我还是遇到了同样的问题。 有什么建议吗

编辑:
我解决了这个问题(错误的url'--),但现在有另一个问题。如果我加载js文件,它工作正常,但是如果我尝试加载编译的js文件(使用Sencha Cmd),它会失败,因为Ext.Cmd未定义。我需要加载已编译的js,而不是原始js文件。有什么想法吗?

尝试移动
newCard.add({xtype:'secondarylist'})行进入
onLoad
回调函数。它不工作,因为它试图从调用
add
函数时加载js文件,抛出404 not found exception。我不明白为什么它在加载js文件之前使用
loadScript
加载它,我认为这与“secondarylist”的名称空间问题有关。该组件尚未在第一个应用程序的命名空间中注册,您必须为其提供完整的命名空间。您是否尝试了Ext.create('App2.view.secondarylist',{configs…});从Sencha Cmd 6.5开始,您可以将代码拆分为多个文件。要实现这一点,如果尚未完成,则必须将代码拆分为exjts包行进入
onLoad
回调函数。它不工作,因为它试图从调用
add
函数时加载js文件,抛出404 not found exception。我不明白为什么它在加载js文件之前使用
loadScript
加载它,我认为这与“secondarylist”的名称空间问题有关。该组件尚未在第一个应用程序的命名空间中注册,您必须为其提供完整的命名空间。您是否尝试了Ext.create('App2.view.secondarylist',{configs…});从Sencha Cmd 6.5开始,您可以将代码拆分为多个文件。要实现这一点,如果尚未完成,则必须将代码拆分为exjts包。以下是我为另一个问题编写的更多详细信息: