2013-03-05 64 views
0

我正在學習Knockout.js並試圖製作its tutorial demo 'Twitter Client' (This is link to the code),但它根本不起作用!Knockout.js演示「Twitter客戶端」不起作用

我的代碼是在這裏:

http://jsfiddle.net/weed_7777/ZZJbv/

我的CoffeeScript代碼如下:

root = exports ? this 
class root.Twitter 
    constructor: -> 
    @tweets = [] 
    $.getJSON('http://search.twitter.com/search.json?callback=?&rpp=100&q=%40weed_7777') 
    .done((data) => 
     $.each data.results, (i, item) => 
     @tweets.push item 
    ) 

root = exports ? this 
class root.TweetListView 
    constructor: -> 
    twitter = new Twitter 
    @currentTweets = ko.computed => 
     twitter.tweets 

ko.applyBindings new TweetListView 

$(".loadingIndicator").ajaxStart -> 
    $(@).fadeIn() 
.ajaxComplete -> 
    $(@).fadeOut() 

謝謝你的好意。

回答

1

你的鳴叫需要是observableArray:

class root.Twitter 
    constructor: -> 
    @tweets = ko.observableArray([]) 
    $.getJSON('http://search.twitter.com/search.json?callback=?&rpp=100&q=%40weed_7777') 
    .done((data) => 
     $.each data.results, (i, item) => 
     @tweets.push item 
    ) 

更新小提琴作品:

http://jsfiddle.net/hwRBN/

+0

太謝謝你了! – weed 2013-03-05 03:54:50