将JSON数组附加到现有的Extjs datastore网格面板

3

我需要一个简单的示例来重新加载Extjs网格的数据存储,基本要求是将Extjs json数据存储与另一个json数组连接。请帮助我完成以下代码,以在Extjs Grid面板中加载data2(json对象)。

        Ext.onReady(function () {
            var store = Ext.create('Ext.data.Store', {
                storeId: 'employeeStore',
                fields: ['name', 'seniority', 'department'],
                groupField: 'department',
                data: {
                    'employees': [{
                        "name": "Michael Scott",
                        "seniority": 7,
                        "department": "Management"
                    }, {
                        "name": "Dwight Schrute",
                        "seniority": 2,
                        "department": "Sales"
                    }, {
                        "name": "Jim Halpert",
                        "seniority": 3,
                        "department": "Sales"
                    }, {
                        "name": "Kevin Malone",
                        "seniority": 4,
                        "department": "Accounting"
                    }, {
                        "name": "Angela Martin",
                        "seniority": 5,
                        "department": "Accounting"
                    }, {
                        "name": "Angela Martin",
                        "seniority": 5,
                        "department": "Accounting"
                    }]
                },
                proxy: {
                    type: 'memory',
                    reader: {
                        type: 'json',
                        root: 'employees'
                    }
                }
            });
            Ext.create('Ext.grid.Panel', {
                title: 'Employees',
                store: Ext.data.StoreManager.lookup('employeeStore'),
                columns: [{
                    text: 'Name',
                    dataIndex: 'name'
                }, {
                    text: 'Seniority',
                    dataIndex: 'seniority'
                }, {
                    text: 'department',
                    dataIndex: 'department'
                }],

                width: 520,
                height: 275,
                renderTo: Ext.getBody()
            });

            var data2 = {
                'employees': [{
                    "name": "User1",
                    "seniority": 7,
                    "department": "Management"
                },{
                    "name": "User2",
                    "seniority": 7,
                    "department": "Management"
                }]
            };

        });
1个回答

3
Ext.getStore('employeeStore').add(data2.employees);

请查看Ext.data.Store#add文档以获取更多信息。

注意: Ext.getStore()Ext.data.StoreManager.lookup()的快捷方式。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接