基本上我想獲取JSON文件並將其存儲在模型中。但是,當我嘗試通過get()
訪問屬性時,它返回undefined。所以可以說JSON文件有一個由具有一些屬性的對象組成的數組遊戲。它並不重要。只是想將它們保存在模型中並訪問它們。所以我正在做這樣的事情。Backbone.js fetch()JSON模型get()迴歸undefined
var player = Backbone.Model.extend({
initialize: function(app, options) {
this.app = app;
var _this = this;
this.fetch({
url: "someurl",
success: function() {
console.log("success");
}
});
}
});
var instplayer = new player();
instplayer.on('change', function(){
console.log(model);
console.log(model.get(games));
})
所以我想,我需要一個事件來確保當數據真的可用get()
被調用。但是這仍然返回undefined。我需要做什麼?謝謝。
你的意思是你取的球員,而且也多維數據,包含遊戲嗎?是這樣的: '{username:「joe」,games:[{title:「Game One」},{title:「Game Two」}}}' 然後你只想訪問'games'屬性, 是對的嗎? – Yura
是的,這是正確的。只要我能從JSON數據中獲取任何東西。我的意思是當我通過console.log查看對象時看到數據,但get()只是簡單地返回undefined。當然,我可以毫無問題地返回帶有默認選項的模型的一些值。 – riasc
在確定你將'.get'方法傳遞給''model.get(「games」)'的引號後,我還建議使用'sync'事件而不是'change'。當內容來自服務器時,'sync'將確保觸發。 「change」會觸發對該模型數據的任何更改,這可能比您想要的更頻繁。 – Yura