//这是我的基础BaseStore
Ext.define("Base.store.BaseStore", {
extend: "Ext.data.Store",
proxy: {
type: 'ajax',
reader: {
type: 'json',
root: 'data',
idProperty: "id",
successProperty: "success",
messageProperty: "msg",
totalProperty: "total"
}
},
sorters: [{
property: 'id',
direction: 'DESC'
}]
});
//第一个model
Ext.define("Script.model.system.SystemMenuModel", {
extend: 'Ext.data.Model',
fields: ["id", "name", "icon1", "icon2", "fatherId", "modelClass", "children"]
});
//第二个model
Ext.define("Script.model.system.SystemRoleModel", {
extend: 'Ext.data.Model',
fields: ["id", "roleName"]
});
//俩个sotre
Ext.define("Script.store.system.SystemMenuStore", {
extend: "Base.store.BaseStore",
model: 'Script.model.system.SystemMenuModel'
});
Ext.define("Script.store.system.SystemRoleStore", {
extend: "Base.store.BaseStore",
model: 'Script.model.system.SystemRoleModel'
});
Ext.define("Script.view.system.SystemRoleGird", {
extend: 'Ext.grid.Panel',
store: null,
columns: [
{ text: 'id', dataIndex: 'id'},
{ text: 'roleName', dataIndex: 'roleName', flex: 1 }
]
});
//问题的关键就在这了,如果不创建store1 ,则表格可以正确绑定数据,如果create了sotre1就不能绑定数据,但数据可以从服务器端正确返回都没问题 就是帮不上,百思不得其解
var store1 = Ext.create('Script.store.system.SystemMenuStore');
var store2 = Ext.create("Script.store.system.SystemRoleStore");
store2.proxy.url = "systemRoleController.do?method=queryRoleList";
Ext.create("Script.view.system.SystemRoleGird",{
store: store2,
renderTo : Ext.getBody()
});
store2.load();
//但是如果在SystemMenuStore与SystemRoleStore中定义自己的proxy也就是不用继承BaseStore的proxy就好使 真不知道为什么了