目前,我有一个脚本黑盒,但我仍然必须逐步通过该代码。它实际上没有显示代码,但我仍然必须按下按钮来逐步执行它,这有点违背了目的。我希望能够跳过所有黑盒代码,直接转到没有黑盒的代码,即使黑盒代码调用非黑盒code...so,我也不想只跳过黑盒代码,但我不想单步通过黑盒代码中的每个步骤来获得非黑盒code...is,这可能吗?
发布于 2017-03-16 07:26:03
如果对脚本进行黑箱操作,调试器根本不会进入脚本文件。您不应该一直单步执行其中的代码。如果是这样,那么要么是我以前见过的源代码映射问题,要么就是您专门在黑盒脚本中设置了断点。请参阅更下方的内容。
例如,以脚本A、B和C为例,B在C中调用某个函数,A在B中调用某个函数,但B是黑盒的。您暂停A调用,进入函数,但调试器不会进入B的函数,而是直接进入C的函数。您可以使用以下命令进行尝试:
主页
<script src="c.js"></script>
<script src="b.js"></script>
<script src="a.js"></script>a.js
window.bFunc();b.js
window.bFunc = function() {
window.cFunc();
}b.js
window.cFunc = function() {
console.log('called cFunc');
}

如果你将断点放在黑盒脚本中(例如本例中的B),它将在断点上中断,但不会进入代码。显然,您可以禁用这些断点以继续单步执行其他代码。重要的是,您显式地将这些断点放在那里,所以您可以控制它。
如果有你不热衷的特定行为,或者有建议,请在DevTools: New blackbox implementation Chromium线程中发表评论。最后一条评论讨论了上面的观点以及调试器不会忽略黑盒断点的好处。
https://stackoverflow.com/questions/42795713
复制相似问题