我对extjs 4有疑问。 下面是我的storeMsg
var storeMsg = this.getMessageStore();
storeMsg.load({
scope: this,
autoLoad: true,
params:{
read_conditions: Ext.JSON.encode({
"employee_rid": '7976',
"year" : '2013', //etos
"kind_holiday_rid" : '1',
"request_days" : '5'
})
},
callback: function(records, operation, success) {
// do something after the load finishes
console.log(records[0].get('remain'));
console.log(records[0].get('messages'));
}
});
我接受了像
这样的json响应{"total":1,"success":true,"data":[{"status":"true","messages":"\u03a3\u03c9\u03c3\u03c4\u03cc \u03b1\u03af\u03c4\u03b7\u03bc\u03b1 \u03ac\u03b4\u03b5\u03b9\u03b1\u03c2","remain":"25"}]}
我想从storeMsg.load()之外的json(ex true)获取字段状态; 例如
var vstatus = Ext.StoreMgr.lookup(storeMsg).data.items[0].data.status
但我知道此vstatus 未定义
我已经更改了代码的变量(vstatus): var vstatus = Ext.StoreMgr.lookup(storeMsg).getProxy()。getReader(); 我正在接受和反对 className" Ext.data.reader.Json" 它有一些属性。属性是
jsonData
data
remain 25
status true
message "Is correct"
total 1
success true
我放弃了 var vstatus = Ext.StoreMgr.lookup(storeMsg).getProxy()。getReader()。jsonData; 我接受了这条消息(未定义)。 你知道如何从jsonData.data.status = true获取值; TNX
以及关于商店,代理和阅读器的完整代码在
之下 Ext.define('MHR.store.Message',{
extend : 'Ext.data.Store',
model : 'MHR.model.Message',
storeId : 'Message',
autoLoad : true,
proxy : {
type: 'ajax',
api: {
read : 'php/crud.php?action=check'
},
actionMethods: {
read : 'POST',
},
reader: {
type: 'json',
root: 'data',
rootProperty: 'data',
successProperty: 'success',
messageProperty: 'message'
},
extraParams : {
'read_conditions': ''
}
}
});
答案 0 :(得分:1)
尝试:
storeMsg.each(function(record) {
var status = record.get('status');
});