0

たとえば、現在、Twitterフィードを1分ごとに更新しようとしています。しかし、私にはその方法がわかりません。

これは私のViewModelです:

var savedLists = ['NielsenRamon', 'Wouter_Willaert', 'AWT_Centric'];

var twitterListModel = function(list) {
    this.savedLists = ko.observableArray(list);
    this.currentTweets = ko.observableArray([]);

    ko.computed(function() {
        twitterApi.getTweetsForUsers(savedLists, this.currentTweets);
    }, this).extend({ throttle: 1 });
}

ko.applyBindings(new twitterListModel(savedLists));

私はこれの非常に縮小されたバージョンを使用しています:http://knockoutjs.com/examples/twitter.html私が使用するAPIも同じです。

私が欲しいのは、たとえば私のページを更新せずに、私のhtmlページのバインディングが毎分更新されることです。例:誰かがツイートしたとき。そのツイートは、ページを更新せずに1分後にページに表示されます。

これは私が今働いている方法で可能ですか?

前もって感謝します!

4

1 に答える 1

0

毎分setInterval呼び出すを使用できます。twitterApi.getTweetsForUsers

何かのようなもの: setInterval(function() { twitterApi.getTweetsForUsers(savedLists, twitterListModel.currentTweets); }, 60000);

ただし、呼び出しに時間がかかる場合は、twitterApiサンプルコードを変更setTimeoutし、実際のTwitter API呼び出しからのコールバックでを使用して、新しい。で自分自身を再スケジュールすることをお勧めしますsetTimeout

于 2012-04-19T15:50:43.500 に答える