ExtJS 4存储和管理记录

时间:2013-05-02 18:55:18

标签: json extjs4 store

我对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': ''

           }
   }
 });

1 个答案:

答案 0 :(得分:1)

尝试:

storeMsg.each(function(record) {
    var status = record.get('status');
});