この投稿から単純なBackboneアプリを構築しようとしています。Backbone.jsコレクションを使用してTwitterRESTfulAPIからデータをフェッチできません。私がやりたいのは、テキストボックスとボタンを追加することです。ユーザーがボタンを押すたびに、私のアプリはTwitterをリクエストし、テキストボックスの内容に基づいてTwitterで検索します(デフォルトでは「NYC」という単語を検索します)。
私のコードは次のとおりです。
私のツイートコレクション
var Tweets = Backbone.Collection.extend({
    model: Tweet,
    url: 'http://search.twitter.com/search.json?q=NYC&callback=?',
    parse: function(response) {
        console.log('parsing ...')
        return response.results;
    }
});
私の見解。
var PageView = Backbone.View.extend({
    el: $('body'),
    events: {
    'click button#add': 'addItem'
    },
    initialize: function() {
        _.bindAll(this, 'render', 'addItem');
        this.tweets = new Tweets();
        this.counter = 0;
        this.render();
    },
    render: function() {
        $(this.el).append("<input id= 'search'type='text' placeholder='Write a word'></input>");
        $(this.el).append("<button id='add'>Search twitts</button>");
        $(this.el).append("<ul id='tweets'></ul>");
        return this;
    },
    addItem: function(item) {
        var subject = $('#search').val() || 'NYC';
        this.tweets.url = 'http://search.twitter.com/search.json?q=' + subject + '&callback=?';
        // never called ...
        this.tweets.bind('reset', function(collection) {
            console.log(collection.length);
            alert(collection.length);
        });
        $.each(this.tweets.fetch().models, function(index, tweet) { 
            item = new Tweet();
            item.set({
                order: this.counter,
                info: tweet.attributes.text// modify item defaults
            });
            $('ul', this.el).append("<li>" + item.get('order') + " " + item.get('info') + "</li>");
        });
    }
});
var pageView = new PageView();
事は:
- 最初のクリック(空のテキストボックス):Twitterリクエストは、ツイートコレクション内の解析によってキャプチャされます。私のul要素には何も追加されていません。 
- 2回目のクリック(単語を含む):Twitterのリクエストはその単語を使用して行われます。ただし、前回の呼び出しからの「NYC」ツイートは出力されます。 
- 3回目のクリック(他の単語を含む):2回目のクリックからの「いくつかの単語」が出力されます。 
...。
Twitterがまだ返信していないので、ツイートを印刷しようとするたびに前回の返信が届きます。解析コールバックでツイートを取得して出力できたと思いますが、かなり厄介なようです。
一方、ツイートをリセットイベントにバインドしようとしましたが、どちらも機能しません。
何か案は??。
前もって感謝します!!