Javascript chrome扩展中的调试匿名函数
我正在构建一个原型web应用程序,我想将其集成到chrome网页中(生产时不需要)。 因此,我有一个构建后端解决方案,将我所有的js文件发送到一个请求中,并将结果发送到chrome扩展客户端,以便于组织和简化 myBackend.coffee(我自己的nodejs服务器) background.coffee(chrome客户端) 好的,这很好,但是当我在“compatedCode”中编写错误代码时,问题就出现了 请告诉我: 未捕获类型错误:未定义不是函数 (匿名函数) 但不告诉我哪里出了错 我有很多代码,所以这并不是在任何地方都可以编写“调试器”的选项Javascript chrome扩展中的调试匿名函数,javascript,debugging,google-chrome,coffeescript,Javascript,Debugging,Google Chrome,Coffeescript,我正在构建一个原型web应用程序,我想将其集成到chrome网页中(生产时不需要)。 因此,我有一个构建后端解决方案,将我所有的js文件发送到一个请求中,并将结果发送到chrome扩展客户端,以便于组织和简化 myBackend.coffee(我自己的nodejs服务器) background.coffee(chrome客户端) 好的,这很好,但是当我在“compatedCode”中编写错误代码时,问题就出现了 请告诉我: 未捕获类型错误:未定义不是函数 (匿名函数) 但不告诉我哪里出了错 我
我应该怎么做才能熟练地进行调试呢?我在这里找到了一个很好的解决方案: 只需要加上这个,太好了
compactedCode += "\n//@ sourceURL=foo.js"
你能试试
try{}catch(e){}
块吗?如果可以的话,注释掉getScript
行,看看它在哪个文件中。是的,已经注释了一些脚本,但是调试起来非常痛苦,因为多个文件都有相同的“通用”错误。所有执行的“compactedCode”在标准web页面中都能正常工作。try{}catch(e){}
在这种情况下不能正常工作
$.ajax
url: "http://localhost:3001/chrome/includes"
success: (data) ->
compactedCode = ''
_.each data.scripts, (code) ->
compactedCode += code
chrome.tabs.executeScript tab.id, code: compactedCode
compactedCode += "\n//@ sourceURL=foo.js"