我想从另一个面板用户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,
........
所以我只是想知道这是否可能。如果是这样的话,我们将非常感谢如何完成它。谢谢
答案 0 :(得分:3)
new myJsonStore();
只会创建一个新商店。为了在代码中的其他位置引用存储(同一文件或其他文件),您需要使用变量。像这样创建商店:
var myStore = new myJsonStore();
要将其绑定到comobobox,请使用变量名myStore
和store
属性。