Привет, ребята, я надеюсь, что кто-то может мне помочь с этим, я действительно застрял, хотя на этот вопрос уже есть какой-то проклятый новичок, и я заверяю вас, что я прочитал весь ответ Сообщения, но все же не могут заставить его работать.Sencha Touch 1.1.1 вложенная загрузка JSON Store
Я использую Sencha Touch 1.1.1 и пытаюсь загрузить этот магазин с вложенными данными JSON. Вот код:
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 с внешней оболочкой Array, он работает, но с неправильным корнем (а не с пользователями) я определенно видел примеры, где это работало с значением root: ''.
var userdata =
[ {"users": [
{
"id": 16,
"username": "[email protected]",
"password": "bla",
}, {
"id": 17,
"username": "[email protected]",
"password": "bla",
}
]
} ];
Что мне не хватает?
Ах, спасибо большое, сейчас работает как очарование. Просто из любопытства, вы знаете, почему я не могу поместить строку JSON в переменную и передать ее в магазин? Магазин данных Sencha кажется для меня большой загадкой. – user1106418
Вы можете поместить строку JSON в переменную. Но поскольку ваш корень является 'users', ваша переменная должна быть' var mydata = [{"id": 16, "username": "blah", "password": "spamme1992"}, {"id": 17, " имя пользователя ":" xxx "," password ":" yyy "}];' –
А, хорошо, ваша помощь очень ценится. – user1106418