我正在构建一个原型 Web 应用程序,我想将它集成到 chrome 网页中(不是生产所必需的)。因此,我构建了一个后端解决方案,将我的所有 js 文件发送到一个请求中,并将结果发送到 chrome 扩展客户端以进行组织和简化目的。
myBackend.coffee(我自己的 nodejs 服务器)
getScript = (name) ->
filename = "#{__dirname}/../public/js/#{name}.js"
fs.readFileSync(filename, 'utf-8')
get '/chrome/includes', (req, res) ->
scripts = [
getScript 'vendor/jquery'
getScript 'vendor/jquery.ui'
getScript 'vendor/mousetrap'
getScript 'vendor/mustache'
getScript 'vendor/backbone'
#...
getScript 'main-chrome'
]
res.send
scripts: scripts
css: [
#...
]
backckground.coffee (chrome 客户端)
$.ajax
url: "http://localhost:3001/chrome/includes"
success: (data) ->
compactedCode = ''
_.each data.scripts, (code) ->
compactedCode += code
chrome.tabs.executeScript tab.id, code: compactedCode
好的,这很好,但是当我在“compatedCode”中执行错误代码时会出现问题。
铬告诉我:
Uncaught TypeError: undefined is not a function (anonymous function) 但没有告诉我错误在哪里。
https://docs.google.com/file/d/0B6tc60GuFE4WSk4zTXhzV1luOE0/edit?usp=sharing
我有很多代码,所以这并不是在任何地方编写“调试器”的真正选择。
我应该怎么做才能熟练地调试?