首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用模型的Extjs 4负载阵列数据

使用模型的Extjs 4负载阵列数据
EN

Stack Overflow用户
提问于 2016-02-12 01:33:14
回答 1查看 1.3K关注 0票数 0

我觉得我可能把事情复杂化了。请随意派我到另一个方向。

我试图使用我的模型(键)中定义的字段,将一个只包含值的记录(值)数组加载到模型对象中。

我的模型

代码语言:javascript
复制
Ext.define('MyApp.model.AppData', {
    extend: 'Ext.data.Model',
    fields: [
        {name: 'key'},
        {name: 'value'},
        {name: 'desc'},
        {name: 'index', type: 'int'},
        {name: 'type'}
    ]
});

我的商店

代码语言:javascript
复制
Ext.define('MyApp.store.AppData', {
    extend: 'Ext.data.ArrayStore',
    groupField: 'type',
    model: 'MyApp.model.AppData',
    autoload: false,
    constructor: function (config) {
        var data = [
            ['val1', 'val2', 'val3', 'val4', 'val5'],
            ['val1', 'val2', 'val3', 'val4', 'val5'],
            ...
        ];
    this.loadData(data);
    }
});

所以这里的最终目标是让我的数据在商店里看起来像

代码语言:javascript
复制
[
    {'key':'val1', 'value':'val2', 'desc':'val3', 'index':'val4', 'type':'val5'},
    {...},
    {...}
]

当前获取“me.removed是未定义的”错误。我知道它与loadData()函数有关。这让我觉得我在某个地方没有正确地使用这个。

我可以用键值对来硬编码数据.但这只是觉得无法维护和错误的方式来做到这一点。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-12 16:27:33

您只需使用存储的数据配置:

代码语言:javascript
复制
var myModel=Ext.define('MyApp.model.AppData', {
    extend: 'Ext.data.Model',
    fields: [
        {name: 'key'},
        {name: 'value'},
        {name: 'desc'},
        {name: 'index', type: 'int'},
        {name: 'type'}
    ]
});

var myData = [
      ['val1', 'val2', 'val3', 0, 'val5'],
      ['val1', 'val2', 'val3', 1, 'val5']
];

var store = Ext.create('Ext.data.ArrayStore', {
    model:myModel,
    data:myData
});

这是一个工作小提琴

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35353322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档