Я пытаюсь получить данные из таблицы в массив. Я уже сохранил данные в переменных javascript. Но теперь мне нужны эти varriables для хранения в качестве объекта в моем массиве. Вот мой код:AngularJS: как я могу получить данные в объект и массив?
this.json = function(){
jQuery.getJSON("http://cors.io/?u=https://spreadsheets.google.com/feeds/list/1l4XTKaLZihj5WDRuZJE5Y7RQ7Cr7SD_-tH0ctwhizWc/od6/public/values?alt=json").success(function(data) {
console.log(data.feed.entry);
//try
for (var i = 0; i < data.feed.entry.length; i++) {
var id = data.feed.entry[i].gsx$id.$t;
var name = data.feed.entry[i].gsx$name.$t;
var price = data.feed.entry[i].gsx$price.$t;
var notcompatiblewith = data.feed.entry[i].gsx$notcompatiblewith.$t;
this.parts[i] = {"id": id, "name": name, "price": price, "comp": notcompatiblewith, "canAdd": true, "added": false};
};
});
};
я вызвать функцию this.json в моем HTML с нг-инициализации = «myctrl.json()», и называет это прекрасно. в моей консоли на инспектировать элемент я получаю сообщение об ошибке: «неперехваченным TypeError: Не удается установить свойство„0“неопределенных»
мой массив должен выглядеть следующим образом, если он инициализируется хорошо:
{
id: 1,
name: 'vitamine A',
price: 3,
canAdd: true,
added: false,
comp: [2, 5]
},
{
id: 2,
name: 'vitamine B',
price: 5,
canAdd: true,
added: false,
comp: [1, 3]
},
{
id: 3,
name: 'vitamine C',
price: 2,
canAdd: true,
added: false,
comp: [2]
},
{
id: 4,
name: 'Opium',
price: 20.95,
canAdd: true,
added: false,
comp: []
},
{
id: 5,
name: 'steroids',
price: 12.5,
canAdd: true,
added: false,
comp: [1]
}
Edit: части массива в инициализирован под мой контроллер, как этот
var parts = [];
и объявлен в мой контроллер, как
this.parts = parts;
Спасибо, это сработало !!!! –