2014-01-31 191 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财产单词“马里奥”游戏的集合。