1
嗨,大家好,我希望有人可以幫助我,我真的卡住了,雖然它是一些已經被回答的該死的初學者問題,我向你保證我閱讀了所有的答案帖子,但仍然無法讓它工作。Sencha Touch 1.1.1嵌套JSON Store加載
我正在使用Sencha Touch 1.1.1並嘗試使用嵌套的JSON數據加載此Store。這裏的代碼:
Ext.regModel("UserData", {
hasMany : [{
name : "id",
type : "integer",
},{
name : "username",
type : "string",
},{
name : "password",
type : "string",
}]
});
var userdata =
{"users": [
{
"id": 16,
"username": "[email protected]",
"password": "bla",
}, {
"id": 17,
"username": "[email protected]",
"password": "bla",
}
]
};
var myStore = new Ext.data.Store({
model : 'UserData',
data : userdata,
proxy : {
type : 'ajax',
reader : {
type : 'json',
root : 'users' // not working
}
}
});
var myList = new Ext.List ({
fullscreen : true,
store : myStore,
grouped : false,
itemTpl : '<div>{username}</div>'
});
返回未捕獲類型錯誤:參數列表有錯誤的類型。當我用一個外部數組封裝器重寫JSON時,它可以工作,但是使用錯誤的根(不是用戶),我明確地看到了這樣的例子,這個例子在root:'value'下工作。
var userdata =
[ {"users": [
{
"id": 16,
"username": "[email protected]",
"password": "bla",
}, {
"id": 17,
"username": "[email protected]",
"password": "bla",
}
]
} ];
我在想什麼?
啊非常感謝你,現在像一個魅力。出於好奇,你知道爲什麼我不能把JSON字符串放入一個變量並傳遞給商店嗎? Sencha數據商店對我來說似乎是一個很大的謎團。 – user1106418 2011-12-19 21:52:51
您可以將JSON字符串放入一個變量中。但由於你的根目錄是'users',你的變量應該是'var mydata = [{「id」:16,「username」:「blah」,「password」:「spamme1992」},{「id」:17,「用戶名「:」xxx「,」密碼「:」yyy「}];' – 2011-12-20 09:40:02
好吧,你的幫助是非常感謝。 – user1106418 2011-12-20 18:48:23