Sencha Ext.define使用vs要求

Tom*_*Tom 9 javascript extjs

Ext.define('...', { 
    uses: ['...'],
});
Run Code Online (Sandbox Code Playgroud)

Ext.define('...', {
    requires: ['...'],
});
Run Code Online (Sandbox Code Playgroud)

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

Eva*_*oli 13

它几乎涵盖了文档:

使用是类的可选类依赖项,但不是类所必需的.这些可以异步加载,并且不必可用于实例化类.

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

如果它在某些方法中实例化Foo,可能会被开发人员稍后调用,那么它可以进入uses.


jav*_*ipt 6

创建类需要'requires',创建该类的对象需要'uses'.

事件序列是:

  • 调用Ext.define
  • 'requires'和'uses'被排队以异步加载
  • 当加载所有'require'时创建class
  • 当所有类''require'和'uses'被加载时,将调用Ext.onReady侦听器