自定义包的extjs Ext.app.Application

自定义包的extjs Ext.app.Application,extjs,extjs6-classic,Extjs,Extjs6 Classic,我正在尝试创建一个包,但它有一堆必需的文件和全局存储,需要在应用程序启动时获取这些文件和全局存储。我的包以前是一个更大的应用程序的一部分,所以我将它们添加到requires:[]和stores:[] 既然我有一个单独的方案,我们如何实现这一目标?(我不再有Application.js文件) 更新 我添加了一个Require.js文件,其中包含我的包的所有需求。现在我只剩下模拟Application.stores来创建全局存储。只需将依赖项直接添加到它们所依赖的类(在帮助下) )。如果必须手动初始

我正在尝试创建一个包,但它有一堆必需的文件和全局存储,需要在应用程序启动时获取这些文件和全局存储。我的包以前是一个更大的应用程序的一部分,所以我将它们添加到
requires:[]
stores:[]

既然我有一个单独的方案,我们如何实现这一目标?(我不再有Application.js文件)

更新


我添加了一个Require.js文件,其中包含我的包的所有需求。现在我只剩下模拟Application.stores来创建全局存储。

只需将依赖项直接添加到它们所依赖的类(在帮助下) )。如果必须手动初始化此存储

有关最新情况的答复:

尝试重写
Require
类的构造函数


Ext.define('Require', {
    stores:[],
    constructor: function (config) {
        this.callParent(arguments);
        Ext.Array.each(this.stores, function (storeName) {
            Ext.require(storeName, function () {
                Ext.create('storeName', {});
            })
        })
    }
})

我想避免在我的包裹里做任何事情。对于视图,我可以看到这种情况,但是对于我的包中使用的存储和实用程序类,应该不需要require(在使用我的包的地方)。为什么?这些依赖项不是包的一部分吗?或者您希望有一个单独的位置来连接依赖项吗?是的,它们是;但是我的包的用户不应该知道使用包中的组件需要什么。组件本身不需要所有依赖项;它们过去是使用Application.js解决的。但一旦我开始将(可重用的)组件移动到包中,我就在寻找一种替代方法,在不使用Application.js的情况下需要这些依赖项(它们也是我包的一部分);我可以使用一行程序,但更重要的是,它会降低我的包的可用性(并且很难维护)。我描述了组件本身的依赖关系。在我看来,您正试图在软件包上使用应用程序方法。如果包的类的依赖项在包之外,我认为这是不好的。尽管这一切都取决于上下文。假设您创建了一个自定义组合框(treecombo-combobox-taht使用treestore),那么您不应该在包中指定要连接到它的存储。在使用该组件(treecombo)的类中执行此操作。也许我误解了你的问题。对不起,我的大多数依赖项都来自我自己的包。在您的示例中,如果我提供一个自定义组合框,我希望用户只需要我的自定义组合框(视图),而不知道他们也需要什么商店类型。似乎最直接的解决方案是在自定义组件中添加对存储的需求。我目前没有这样做,希望避免这样做;我希望我可以在一个地方要求所有的商店,然后在同一个地方实例化所有的全球商店。据我所知,
Application.stores
提供的就是这个。