Создайте ko.observableArray из объекта JSON в Knockout

Я только начал использовать Knockout.js, и он отлично работает с обычными бидингами. У меня проблема с observableArray.

Я хочу создать observableArray и присвоить ему данные JSON из API Google Feed. Вот формат JSON https://developers.google.com/feed/v1/devguide#resultJson

google.load("feeds", "1");  // Loads Google Feed API
function FeedViewModel()
{
    // Data
    var self = this;
    self.allEntries = null;

    // Example property, and it works
    self.feedHead = ko.observable("BBC News");

    var feed = new google.feeds.Feed("feeds.feedburner.com/BBCNews");
    feed.setResultFormat(google.feeds.Feed.JSON_FORMAT);
    feed.includeHistoricalEntries();
    feed.setNumEntries(30);

    // Loads feed results
    feed.load(function (result) {
        if (!result.error) {           
            self.allEntries = ko.observableArray(result.feed.entries);

            // accessing the title from here is OK
            alert(self.allEntries()[1].title);
        }        
    });
}

В приведенном выше примере доступ к массиву из ViewModel в порядке, но мне нужно отобразить его в представлении. (в браузер) с помощью foreach:allEntries

Latest News

Но ничего цикл ko foreach ничего не возвращает. Наблюдаемый канал feedHead в порядке.

Также у меня нет ошибок JS. Любая помощь..

5
задан Maxali 21 March 2012 в 00:40
поделиться