在Ruby语言中,我可以在代码中的任何地方输入binding.pry,在执行时,我的控制台将进入一个REPL,在其中我可以访问所有本地变量,可以进行更改,并执行任何任意代码。
示例:
# foo.rb
require 'pry'
n = 5
binding.pry
puts "your number is #{n}"当我运行它时:
$ ruby foo.rb
From: /Users/cgenco/Desktop/foo.rb @ line 4 :
1: # foo.rb
2: require 'pry'
3: n = 5
=> 4: binding.pry
5: puts "your number is #{n}"
[1] pry(main)> n = 100
=> 100
[2] pry(main)> exit
your number is 100这是一个令人难以置信的调试工具,特别是对于需要复杂设置的情况:我只需在需要更多代码的地方输入binding.pry,胡乱操作,找出需要编写的代码,然后将经过打磨的代码添加到实际的源代码中。
有没有像pry这样的工具可以在浏览器控制台上运行?
发布于 2013-06-14 04:27:30
尝试在您的代码中以this answer suggests的身份使用debugger;。您的浏览器开发工具必须处于打开状态。
发布于 2015-05-14 03:56:35
我想提一下,Node.js有一个很好的东西叫做调试器。
超短篇教程:
node debug appname.js
node appname.js
请看:https://nodejs.org/api/debugger.html我之所以发布这篇文章,是因为在我找到调试器工具之前,我发现了很多需要依赖的方法!
发布于 2022-01-10 20:26:15
问了这个问题大约9年后,我偶然发现了我正在寻找的东西:pryjs。
将其包含在import pry from "pryjs"或const pryjs = require("pryjs")中,然后使用eval(pry.it)而不是binding.pry调用它。
它的工作方式与您预期的一样。
https://stackoverflow.com/questions/17096263
复制相似问题