2

我有用于网格和柱形图的存储,但值是字符串形式的(服务器端格式化的数量,不能在客户端完成)。由于字符串格式的数量,网格没有被呈现。解决方案可能会使用网格和图表所需的数据类型单独存储。但这是低效的方式,因为相同的数据来自服务器。

这就是我在做什么

if (!window.GridModel) {
            if (!Ext.ModelManager.isRegistered('GridModel')) {
                Ext.define('GridModel', {
                    extend: 'Ext.data.Model',
                    fields: [{
                        name: 'LocCode',
                        type: 'string'
                    }, {
                        name: 'LocLvl',
                        type: 'string'
                    }, {
                        name: 'LocName',
                        type: 'string'
                    },

                    {
                        name: 'cost1',
                        type: 'string'
                    }, {
                        name: 'Cost2',
                        type: 'string'
                    }, {
                        name: 'cost3',
                        type: 'string'
                    }


    ]
            });
        }
    }

图表(不缺)

if (!window.chartModel) {
            if (!Ext.ModelManager.isRegistered('chartModel')) {
                Ext.define('chartModel', {
                    extend: 'Ext.data.Model',
                    fields: [{
                        name: 'LocCode',
                        type: 'string'
                    }, {
                        name: 'LocLvl',
                        type: 'string'
                    }, {
                        name: 'LocName',
                        type: 'string'
                    },

                    {
                        name: 'cost1',
                        type: 'float'
                    }, {
                        name: 'Cost2',
                        type: 'float'
                    }, {
                        name: 'cost3',
                        type: 'float'
                    }


    ]
            });
        }
    }

一种方法可能是将一个商店复制到另一个具有更改的字段数据类型的商店,但我不知道如何将一个商店复制到另一个具有更改的字段数据类型的商店。

我正在使用ExtJS 4.0.7

4

1 回答 1

3

您可以在同一个商店中拥有不同的类型,但您必须手动加载它们,或者在加载时使用一些技巧。

不确定您是否可以拥有完全不同的类型,但您可以使用不同的子类型。

以下是根据响应动态更改商店类型的示例:

http://extjs-tutorials.blogspot.ca/2012/06/polymorphic-json-change-model-subclass.html

于 2012-11-08T19:39:28.163 回答