2014-01-31 258 views
0

我寫一個應用骨幹,其中用戶可以搜索視頻遊戲從陣列中的所有項目。渲染骨幹

下面一段代碼返回的用戶在使用searchfield類型的隨機遊戲。例如,如果用戶搜索Mario,則會列出API中排名前五的五款Mario遊戲之一。

$.getJSON(url, function(data){ 
    var games = data.results 
    var game = games[Math.floor(Math.random() * 5)]; 
    var content = self.game_template({game: game}); 
    self.$el.append(content); 
    $('.main-game').css("display", "block"); 
}); 

我想,當特定標題用戶搜索,它使每一場比賽。所以當用戶搜索Mario時,所有的Mario遊戲都會呈現。遊戲是在一個數組中,所以如果我說,var game = games;,Chrome檢查員給出了Object,它包含很多其他的遊戲對象。

回答

0

如果你正在構建一個主幹應用程序,使用骨幹件。所有你在你的代碼必須是jQuery的...

您應該使用含有博弈模型來存儲你的數據收集骨幹(見例如Backbone: Create collection from JSON)。當你的遊戲的集合,你可以使用filter方法來獲得遊戲的列表中選擇所需

var marioGames = myCollection.filter(function(game){ 
    return game.get("name").indexOf("Mario") >= 0; 
}); 

marioGames現在將包含在他們的name財產單詞「馬里奧」遊戲的集合。