我遇到了生命中的问题。
每次我想用代理(ajax)构建一个简单的Ext.data.Store
时,请求被触发我可以在我的服务器中看到我同时放入store.load()的请求,但是当我放了一些回复/查看我的商店,如store.data.items
或store.getProxy().reader.rawData
,我什么也没得到。
这是代码。这很简单,就像ExtJs doc的例子一样:
Ext.define('User', {
extend: 'Ext.data.Model',
fields: [
{
name: 'id',
type: 'int'
},
{
name: 'Rule',
type: 'string'
},
]
});
var myStore = Ext.create('Ext.data.Store', {
model: 'User',
proxy: {
type: 'ajax',
url: '/product/getrule/'+product_id,
reader: {
type: 'json',
root: 'result["rules"]'
}
},
autoLoad: true
});
json是这样的:
"result":{
"name": "producttemplatte1",
"rules":[
{
"id": 1,
"rule":"rule1"
}
],
"active": true
}
我已经尝试了一切。 Ext.Ajax.request
也是。我将Ajax响应中的数据添加到商店和所有内容,但是组合框存储不会加载(我想这是因为来自Ajax的异步" A"不希望:/ )