加载两个不同的json与同一商店

时间:2011-05-25 08:11:06

标签: json url extjs4

有没有办法按需加载不同的json文件(点击),以某种方式更改URL。相同的商店,相同的型号,只需更改url和load()。

Ext.define('app.gridStore', {
    extend: 'Ext.data.Model',
    fields: [
        'name', 'email', 'phone'
    ]
});

var myStore =Ext.create('Ext.data.Store', {
    model: 'app.gridStore',
    proxy: {
        type: 'ajax',
        url : 'app/kontaktGrid.json',
        reader:{ 
            type:'json',
            root: 'items'
        }
    }


});

buttons: [{
   text: 'Load1',
   handler:function(){

   myStore.load().url('app/kontaktGrid1.json');

   }
   },{
   text: 'Load2',
   handler:function(){

   myStore.load('app/kontaktGrid2.json');--

返回POST 405方法不允许

   }
}]

1 个答案:

答案 0 :(得分:1)

myStore.load().url('app/kontaktGrid1.json');myStore.load('app/kontaktGrid2.json');都不会更新用于检索数据的商店网址。

要更新网址,您需要执行以下操作:

myStore.getProxy().url = "/new-url";
myStore.load();

第一个语句修改商店的代理URL。然后调用load()将新数据加载到商店。