无法在 node_modules 内设置断点 (WebStorm)
Unable to set breakpoints inside node_modules (WebStorm)
我使用 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
)。当我在该行设置断点并重新 运行 代码时,它不会停在那里。我自己的代码中的断点工作正常。
看起来与WEB-18160相似,已在即将推出的 11.0.2 中修复
我使用 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
)。当我在该行设置断点并重新 运行 代码时,它不会停在那里。我自己的代码中的断点工作正常。
看起来与WEB-18160相似,已在即将推出的 11.0.2 中修复