1

当我尝试执行下面的代码时,我收到两条Uncaught ReferenceError消息

Ext.define('Example.foo', {
  store: _createStore(),
  _createStore: function() {
    return new Ext.data.JsonStore({...});
  }
});
var example = new Example.foo();

错误消息:

Uncaught ReferenceError: _createStore is not defined
Uncaught ReferenceError: Example is not defined 

_createStore如果在上面定义,错误仍然会发生store。我正在使用 ExtJS 4.2.1.883。

4

1 回答 1

1

如果 Foo 是一些 UI 组件并且您必须使用函数来获取对您的商店的引用,您可以这样做:

Ext.define('Example.Foo', {

    // set other Foo properties...

    initComponent: function () {
        this.store = this.createStore();
        this.callParent(arguments);
    },

    createStore: function () {
        return Ext.create("Ext.data.JsonStore", {
            // store setup
        });
    } 

});

但是,如果您有一个代表您的商店的类,您可以只使用商店类的字符串名称,Ext 框架将为您创建它的一个实例:

store: 'Example.stores.FooStore'
于 2013-07-16T19:25:04.873 回答