从另一个文件访问Ext Designer JsonStore

时间:2011-04-12 07:17:34

标签: javascript extjs

我想从另一个面板用户js文件访问从ext设计器创建的JsonStore。 从设计器生成的文件存储文件如下所示

myJsonStore = Ext.extend(Ext.data.JsonStore, {
 constructor: function(cfg) {
    cfg = cfg || {};
    CoaJsonStore.superclass.constructor.call(this, Ext.apply({
        storeId: 'myJsonStore',
        url: '/server.json',
        restful: true,
        autoLoad: true,
        autoSave: false,
        fields: [
            {
                name: 'id'
            },
            {
                name: 'code'
            },
            {
                name: 'name'
            }

        ]
    }, cfg));
}
});
new myJsonStore();

我现在正在做的是使用隐藏的组合并将商店分配给组合,这允许我通过autoRef访问它(使用.combo.getStore(),它给我一个对象类型的Store)。理想情况下,我希望能够在没有隐藏组合的情况下完成它。

我试过用storeId引用它,但它不起作用,如果我将storeId记录到控制台这就是我得到的。

 function (cfg) {
    cfg = cfg || {};
    CoaJsonStore.superclass.constructor.call(this, Ext.apply({
        storeId: 'myJsonStore',
        url: '/coas.json',
        restful: true,
........

所以我只是想知道这是否可能。如果是这样的话,我们将非常感谢如何完成它。谢谢

1 个答案:

答案 0 :(得分:3)

new myJsonStore();只会创建一个新商店。为了在代码中的其他位置引用存储(同一文件或其他文件),您需要使用变量。像这样创建商店:

 var myStore = new myJsonStore();

要将其绑定到comobobox,请使用变量名myStorestore属性。