9
Ext.define('...', { 
    uses: ['...'],
});

Ext.define('...', {
    requires: ['...'],
});

我有点困惑......他们有共同点吗?我们什么时候使用其中一个?

4

2 回答 2

14

文档几乎涵盖了它:

使用是可选的类依赖项,由类使用,但不是必需的。这些可以异步加载,并且不必对要实例化的类可用。

例如,如果它是你的类在构造函数中实例化 Foo 的东西,那么它应该在requires.

如果它以某种可能被开发人员稍后调用的方法实例化 Foo,它可以进入uses.

于 2013-04-17T03:15:05.667 回答
7

创建类需要“requires”,创建该类的对象需要“uses”。

事件顺序为:

  • Ext.define 被称为
  • 'requires' 和 'uses' 被排队异步加载
  • 类是在加载所有“要求”时创建的
  • 加载所有类的“requires”和“uses”时调用 Ext.onReady 侦听器
于 2013-11-15T02:17:13.890 回答