我对数据存储中的extjs'root'参数一无所知。
var xxx = new Ext.data.JsonStore
({
autoLoad: true,
url: 'www.dataserver.com',
root: 'data',
idProperty: 'ID',
fields: ['ID', 'Name']
});
我觉得这个小东西,但我对extjs很新,请向我解释一下这个根用于数据的用途是什么
答案 0 :(得分:1)
这是JsonReader的配置。 JsonStore接受JsonReader的所有配置。 在根配置中,您将给出包含行对象数组的属性的名称。
在你的情况下,它将是:
{
data: [
{ID: 1, Name: "some name"},
{ID: 2, Name: "another name"}
]
}
答案 1 :(得分:-1)
读者用于解释要加载到Model实例或Store中的数据 - 通常是为了响应AJAX请求。通常,通常不需要直接创建Reader实例,因为Reader几乎总是与Proxy一起使用,并且使用Proxy的reader配置属性进行配置
Ext.create('Ext.data.Store', {
model: 'User',
proxy: {
type: 'ajax',
url : 'users.json',
reader: {
type: 'json',
root: 'users'
}
},
});
上述阅读器配置为使用如下所示的JSON字符串:
{
"success": true,
"users": [
{ "name": "User 1" },
{ "name": "User 2" }
]
}
在上面的json结构中,我们有两个属性(带键:值对)作为“success”和“users”。“users”键有对象数组,我们将在商店中使用。所以在这个json我们将为读者使用“users”属性,所以我们只提到“用户”作为该商店的root用户。
作为回顾,root是配置,它将告诉我将在消费json中使用哪个属性/对象部分。
由于