Ext Store未正确加载数据

时间:2011-09-08 11:07:18

标签: extjs

我真的坚持这一点,非常感谢任何提示。当我尝试加载我的'dealerList'商店时:

updateDealerList : function (){
    myapp.stores.dealerList.load();
}

编辑:没关系,最后自己解决了...当我停止使用关联时,商店工作

1 个答案:

答案 0 :(得分:0)

原因是您配置错误。

您的DealerList模型被映射到currentPage,totalPages,经销商,但读者有一个经销商的根。你设置JSON的方式应如下所示:

{
    dealers : [
        {
            currentPage : 0,
            totalPages  : 10,
            dealers     : [....]
        }
    ]
}

但这不是你想要的。使用PHP文件中的JSON,这就是您的Model + Store应该是这样的:

Ext.regModel('DealerList', {
    fields : [
        'dealerName'
    ]
});

myapp.stores.dealerList = new Ext.data.Store({
    model : 'DealerList',

    proxy : {
        type: 'ajax',
        url : 'dealerresults.php',
        extraParams: {
            app_id: '<?php echo $app_id; ?>',
            arrayParam: ['value1', 'value2']
        },
        reader: {
            type: 'json',
            root: 'dealers',
        }
    }
});

读者将获取整个JSON字符串并进行解析。基于读者中指定的根,即查找所需记录的位置,因此JSON中的“经销商”就是您的记录所在。