サーバーからデータを取得しているときに、observableArray 内に値を挿入することはできませんが、他の要素はデータを取得します。
JSマークアップ:
var itemViewModel = {
item: {},
isLoaded: ko.observable(false),
comments: ko.observableArray([]),
loadcontent: function (getID) {
$.ajax({
url: '/api/item/details/' + getID,
dataType: 'json',
success: function (data) {
itemViewModel.item = data;
$.each(data.Comments, function (index) {
itemViewModel.comments.push(data.Comments[index]);
console.log(data.Comments[index]);
console.log(itemViewModel.comments);
});
itemViewModel.isLoaded(true);
itemDetailBindings();
console.log(itemViewModel.item);
console.log(itemViewModel.comments);
}
});
}
};
結果:
Object
[]
Object
[]
Object
[]
[]
Object
[]