2012-09-17 92 views
2

我有一個基於jquery mobile的移動網站實現,現在學習backbone.js並重新考慮應用程序以更好地組織它。Backbone Collection Fetch()不工作

var membership = Backbone.Model.extend(); 

var memberships = Backbone.Collection.extend({ 
    model: membership, 
    parse: function (resp, xhr) { 
     }, 
    url: "/groups.svc/memberships/azxcv01" 
    }); 

    var col1 = new memberships(); 
    col1.fetch({ success: function() { 
     console.log(col1); 
    } 
}); 

在chrome中,我看到URL格式良好並返回有效的JSON。 解析()事件也得到有效的 resp。但上面的console.log()顯示爲空數組「[]」。

我錯過了什麼?

+0

檢查更新答案.. –

回答

0

試試這個, 這裏鏈接擺弄http://jsfiddle.net/w7xeb/(更新)

var membership = Backbone.Model.extend(); 

var memberships = Backbone.Collection.extend({ 
    model: membership, 
    parse: function (resp, xhr) { 
      return resp; 
     }, 
    }); 

    var col1 = new memberships(); 
    col1.fetch({ 
     url : "/restful/fortune",     
     success: function() { 
      console.log(col1); 
    } 
}); 
​ 

響應

$.mockjax({ 
    url: "/restful/fortune", 
    responseTime: 750, 
    contentType: "text/json", 
    responseText: [{ 
      a:'a' 
     },{ 
      a:'b' 
     },{ 
      a:'c' 
     }] 
}); 
+0

不幸的是我仍然看到的一樣。 col1和resp的響應在控制檯(models:Array [0])中是相同的。 – chenaivaasi

+0

檢查更新的答案.. –

+0

謝謝,這給了我一些很好的學習。但是我想通過使parse()看起來像這樣來解決問題。 parse:function(resp,xhr){0}返回JSON.parse(resp); }, – chenaivaasi