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"
                }]
            };

        });
4

1 回答 1

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

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

注意Ext.getStore()是一个快捷方式Ext.data.StoreManager.lookup()

于 2012-10-28T14:43:08.573 回答