【发布时间】:2016-03-06 20:51:38
【问题描述】:
我使用 Webstorm 来调试我的应用程序。设置断点效果很好,我的断点将被调试器命中。如果我在 node_modules 内的脚本中设置断点,则它不再起作用。它应该与 WebStorm 有关,因为 Node Inspector 使用相同的代码可以正常工作。
它似乎对所有包都是通用的,但我创建了一个仅使用 BlueBird 包的示例应用程序。在 WebStorm 中调试以下程序(确保之前运行过npm install bluebird)。
Promise = require('bluebird');
var promise = new Promise(function(resolve, reject) {
console.log("Waiting 5 seconds...");
setTimeout(function(){
console.log("Resolving...");
resolve();
}, 5000);
});
promise.then(function(){
console.log("Resolved.");
});
这个伪造的程序运行良好。当我进入代码的promise.then 部分时,我点击了promise.js 的第111 行(BlueBird 包的函数Promise.prototype.then)。当我在该行设置断点并重新运行代码时,它不会停在那里。我自己的代码中的断点确实可以正常工作。
【问题讨论】:
-
您能否提供更多关于您要调试的节点模块的详细信息?或者,如果您正在使用特定的节点框架或类似的东西?
-
我改变了我最初的问题,所以它包含一个非常基本的示例程序(在这里不起作用)。
-
好的,我看看能不能重现问题
-
我用 gif 更新了我的帖子,展示了我所做的事情。如果我做了你想做的事,请告诉我。我可能在这里遗漏了一些东西。
标签: webstorm javascript-debugger