ExtJS 4-Model和DataStore.Raw中的字段,但不在DataStore.Data中
我试图用一个数据存储填充一个网格,该数据存储使用一个代理和一个定义的模型和读取器。类似的商店没有同样的问题,但有一个是 模型ExtJS 4-Model和DataStore.Raw中的字段,但不在DataStore.Data中,extjs,extjs4,Extjs,Extjs4,我试图用一个数据存储填充一个网格,该数据存储使用一个代理和一个定义的模型和读取器。类似的商店没有同样的问题,但有一个是 模型 Ext.define('DrillDescriptionGridModel', { extend: 'Ext.data.Model', fields: [ {name: 'sentTime', type: 'string'}, {name: 'sDescription', type: 'string'},
Ext.define('DrillDescriptionGridModel', {
extend: 'Ext.data.Model',
fields: [
{name: 'sentTime', type: 'string'},
{name: 'sDescription', type: 'string'},
{name: 'receivedTime', type: 'string'},
{name: 'seconds', type: 'number'},
{name: 'formatted', type: 'string'},
{name: 'alertPhone', type: 'string'},
{name: 'alertEmail', type: 'string'}
]
});
读取器
var DrillDescriptionReader = Ext.create('Ext.data.JsonReader', {
type: 'json',
model: 'DrillDescriptionGridModel',
root: 'data'
});
贮藏
代理返回一个json字符串
{"data":[{"sDescription":"Status Normal","sentTime":"12:00:00 am","receivedTime":"12:00:01 am","seconds":"2","formatted":"2 seconds","alertPhone":"","alertEmail":""}, [...]
将显示加载侦听器中的console.log
Ext.Class.c.m
data: Object
alertEmail: ""
alertPhone: ""
formatted: "2 seconds"
receivedTime: "12:00:01 am"
seconds: 2
sentTime: "12:00:00 am"
__proto__: Object
[...]
raw: Object
alertEmail: ""
alertPhone: ""
formatted: "2 seconds"
receivedTime: "12:00:01 am"
sDescription: "Status Normal"
seconds: 2
sentTime: "12:00:00 am"
__proto__: Object
[...]
有人知道为什么sDescription字段会映射到原始对象,而不是数据对象,或者在代码中发现错误吗?任何帮助都将不胜感激。谢谢。如果您在标记extjs 4时使用它。。那么json读取器的定义就不正确了
这个类应该是
Ext.data.reader.Json
,所以我已经找到了这个类,不幸的是它与我发布的代码没有任何关系。谢谢你的帮助,洛基
我在代码中有另一个存储区,它试图利用同一个阅读器。。。这看起来根本不应该是个问题,但显然是个问题。在下面的商店中修改了阅读器,代码立即生效
再次感谢Rocky的帮助,感谢您查看nscrob。感谢您的查看,但这不会改变任何事情。Ext.data.reader.Json有一个备用类名。它是Ext.data.JsonReader。这应该不是问题。我已经在Chromium Linux上用Ext4.0.2a测试了您的代码,并且可以在数据对象中看到sDescription。您使用的是哪个版本的ExtJS?我使用的是4.0.2(不是a),在Mac上的Chrome和FF6.0.2中进行了测试,在Windows环境中的IE8也得到了相同的结果。在Linux和Windows上的Chrome中,您的代码在4.0.2中也能正常工作。现在我不知道是什么导致了你的问题。
Ext.Class.c.m
data: Object
alertEmail: ""
alertPhone: ""
formatted: "2 seconds"
receivedTime: "12:00:01 am"
seconds: 2
sentTime: "12:00:00 am"
__proto__: Object
[...]
raw: Object
alertEmail: ""
alertPhone: ""
formatted: "2 seconds"
receivedTime: "12:00:01 am"
sDescription: "Status Normal"
seconds: 2
sentTime: "12:00:00 am"
__proto__: Object
[...]