如何在extJS网格中获取JSON数据

时间:2017-04-12 07:41:46

标签: javascript extjs

我正从我的商店加载这些数据。任何人都可以解释一下如何动态加载数据。通过使用Ajax。

我的COED

Ext.create('Ext.data.Store', {
    storeId: 'simpsonsStore',
    fields:[ 'name', 'email', 'phone'],
    data: [
        { name: 'Lisa', email: 'lisa@simpsons.com', phone: '555-111-1224' },
        { name: 'Bart', email: 'bart@simpsons.com', phone: '555-222-1234' },
        { name: 'Homer', email: 'homer@simpsons.com', phone: '555-222-1244' },
        { name: 'Marge', email: 'marge@simpsons.com', phone: '555-222-1254' }
    ]
});

Ext.create('Ext.grid.Panel', {
    title: 'Simpsons',
    store: Ext.data.StoreManager.lookup('simpsonsStore'),
    columns: [
        { text: 'Name', dataIndex: 'name' },
        { text: 'Email', dataIndex: 'email', flex: 1 },
        { text: 'Phone', dataIndex: 'phone' }
    ],
    height: 200,
    width: 400,
    renderTo: Ext.getBody()
});

现在数据我将放入一些json文件。我的问题是如何在extJS网格存储中获取JSON数据。如何重写STore代码

1 个答案:

答案 0 :(得分:1)

您需要配置Ext.data.Store以使用Ext.data.proxy.Proxy从服务器加载数据。

  

Ext.data.proxy.Ajax - 将请求发送到同一域上的服务器

     

Ext.data.proxy.JsonP - 使用JSON-P向a上的服务器发送请求   不同的域名

     

Ext.data.proxy.Rest - 使用RESTful HTTP方法   (GET / PUT / POST / DELETE)与服务器Ext.data.proxy.Direct进行通信    - 使用Ext.direct.Manager发送请求

docs:https://docs.sencha.com/extjs/6.2.0/classic/Ext.data.proxy.Proxy.html

代码示例:http://docs.sencha.com/extjs/6.0.2/classic/Ext.data.proxy.Ajax.html