调试主干.js

Debugging Backbone.js

本文关键字:js 调试      更新时间:2023-09-26

我正在寻找一些调试骨干网的指导.js。我正在遵循 Daily.js 主干教程,并在第 9 周 (http://dailyjs.com/2013/01/24/backbone-tutorial-9/( 后遇到了一个错误。

这是我的错误

[22:47:29.339] "调用请求执行"[22:47:29.423] 获取 http://localhost:8080/img/glyphicons-halflings.png [HTTP/1.1 304 未修改 1ms][22:47:29.424] 发布 https://content.googleapis.com/rpc?key=xxxxxxx [HTTP/1.1 200 OK 168ms][22:47:29.546] 引用错误:未定义 id @ http://localhost:8080/js/lib/underscore.js:1209[22:47:29.543] "调用选项成功">

下面是具有相应控制台日志记录调用的代码:

 Backbone.gapiRequest = function(request, method, model, options( {    变量结果;    控制台.log("调用请求执行"(    request.execute(function(res( {      如果(res.error({        if (options.error( options.error(res(;      } else if (options.success( {        如果(res.items( {          结果 = 项目;        } else {          结果 = 分辨率;        }        控制台.log("调用选项成功"(;        选项成功(模型,结果,请求(;      }      console.log("gapiRequest"(    });  };

目前的事情正在抛弃我:

  1. 为什么没有显示最后一个日志(gapiRequest(。
  2. 为什么错误发生在两个控制台日志之间,即使代码中没有任何内容引用 id 或据我所知的任何外部库。

如果有人知道可能发生的事情会很棒,那么有关如何调试的任何信息也将非常好。是否可以在当前的 Web 浏览器中生成堆栈跟踪?

TIA,马 特

  1. 如果你查看时间戳,你的脚本崩溃了:

    [22:47:29.546] ReferenceError: id is not defined @ http://localhost:8080/js/lib/underscore.js:1209
    [22:47:29.543] "calling options success"
    

    你会看到"calling options success"发生在ReferenceError之前。这意味着您的客户端收到了结果,但您的脚本在渲染模板时崩溃了(我猜(,可能是因为:

  2. 从发生异常的库(下划线.js(来看,您可能在下划线模板中的某处引用了id。在模板文件中查找类似<%= id%><% id%>的内容。