【问题标题】:ExtJS alias vs idExtJS 别名与 id
【发布时间】:2013-08-30 14:53:28
【问题描述】:

我不明白 ExtJS 中 alias vs id vs itemId 配置属性的用法

app/view/foo.js

Ext.define('app.view.foo', {
    ...
    alias: 'widget.foo',         // 1
    id: 'foo',                   // or 2
    ...
});

app/controller/goo.js

Ext.define('app.controller.goo', {
    ...
    views: ['foo', ...],
    init: function() {
        this.control({
               'foo': {...},     // 1
               '#foo': {...}     // or 2
               ...
        });
        ...
    },
    ...
});

有了alias,我可以轻松地使用xtype.. 但是通过将id 设置到我的视图有什么好处?

【问题讨论】:

    标签: extjs extjs4


    【解决方案1】:

    alias 设置在类定义 上,使用Ext.define,并且在创建实例时用于xtype(您似乎掌握了这个窍门)。 id 应该在类 instance 上设置,例如使用Ext.create 时。这只是作为组件特定实例的唯一标识符。

    FWIW,id 应谨慎使用。使用itemId 并相对使用它来引用组件,而不是使用id 在全局范围内为您提供更好的服务。

    【讨论】:

    • 有道理。我假设 ExtJS 有一个本地 id 生成器来帮忙?
    • ExtJS 将为它创建的每个组件分配一个唯一的 ID,除非您在实例化时在配置选项中指定 id
    • 是的,如果没有记错的话,原生 ExtJS id 生成器是 Ext.id()
    猜你喜欢
    • 1970-01-01
    • 2021-12-29
    • 1970-01-01
    • 2012-09-26
    • 2017-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-30
    相关资源
    最近更新 更多