Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用Backbone.js获取要渲染的模板_Javascript_Api_Backbone.js - Fatal编程技术网

Javascript 如何使用Backbone.js获取要渲染的模板

Javascript 如何使用Backbone.js获取要渲染的模板,javascript,api,backbone.js,Javascript,Api,Backbone.js,我正忙着为你完成的游戏搭建一个平台。我使用GiantbombAPI来实现这一点 下面的代码是我测试API的代码。我想用用户的输入返回一个随机游戏。因此,如果用户搜索马里奥,他可以得到任何马里奥游戏发布 我似乎无法呈现模板。我可以从API中获取大量信息,但我只需要游戏名称、平台和发布日期 我不熟悉Backbone.js,所以我不知道出了什么问题 主视图 var LibraryView = Backbone.View.extend({ el:$('body'), game_template: _

我正忙着为你完成的游戏搭建一个平台。我使用GiantbombAPI来实现这一点

下面的代码是我测试API的代码。我想用用户的输入返回一个随机游戏。因此,如果用户搜索马里奥,他可以得到任何马里奥游戏发布

我似乎无法呈现模板。我可以从API中获取大量信息,但我只需要游戏名称、平台和发布日期

我不熟悉Backbone.js,所以我不知道出了什么问题

主视图

var LibraryView = Backbone.View.extend({
 el:$('body'),
 game_template: _.template($("#gametemplate").html()),
 url: url = "http://www.giantbomb.com/api/search/?api_key=[KEY]&format=json",
 events:{
     "keypress input":"findGames"
},

findGames:function(e){ 
  if(e.which == 13){
  self = this;
  query = $(".searchfield").val()
  url = url +"&query="+ query;
  $.getJSON(url, function(data){
    var games = data.results
    var game = games[Math.floor(Math.random() * 5)];
    var content = self.game_template({});
    self.$el.append(content);
    $('.main-game').css("display", "block");
    });
  }
}
Index.html

<script type="text/template" id="gametemplate">
<ul>
  <li><%= name %></
  <li><%= original_release_date %></li>
</ul>


  • url:url=“”,为什么不只是url:“在findGames函数中,我要求提供整个URL,如果删除URL:或URL=则路由器和视图中都会出现错误。您可以保留URL:just remove URL=如果您提交的代码与您的代码完全相同,我认为您在视图范围之外创建了“findGames”函数。不应在“按键输入”事件中调用它。