忽略debugging器; 在debugging会话期间Node.js中的语句
我有一个代码库,我有很多
debugger;
声明。 有时我会debugging,实际上我只想跳过所有的debugging器; 语句,并只继续到我为debugging会话select的手动设置的断点,是否有一些Node.js偶然的设置来做到这一点?
换句话说,我想考虑debugger;
声明是长期占位符,但对于某些debugging会话,我想忽略这些长期占位符。
我过去使用的一个技巧就是使用babel去除debugging器语句:
请参阅: https : //www.npmjs.com/package/babel-plugin-remove-debugger
这可以用铬devtools完成。
你可以做:
node --inspect --debug-brk index.js
会产生这样的事情:
chrome-devtools://devtools/remote/serve_file/@60cd6e859b9f557d2312f5bf532f6aec5f284980/inspector.html?experiments=true&v8only=true&ws=localhost:9229/9c2e4f37-4c3a-4477-b8da-2399c5d9819e
只需复制并粘贴在铬上。
有一个选项可以禁用/启用所有的断点,而且chrome会记住您之前设置的所有断点。
请检查: --inspect
查看更多信息。
快速和肮脏的方式(它的debugging,所以它的罚款真的)是坚持像脚本/ debugger.js像下面的脚本
require.extensions['.js'] = function(module, filename) { var content = fs.readFileSync(filename, 'utf8').replace(/debugger/g, [ '(function() {', ' if (__debugger) {', ' debugger;', ' }', '})', ].join('\n')); module._compile(content, filename); };
然后用node -r ./scripts/debugger
启动节点
在这里使用一个全局variables,这样,如果使用--inspect
debugging,可以从debugging器repl或chrome的repl中启用/禁用它。
技术上require.extensions已被弃用,但它不会被删除,并按预期工作。
- 使用Node.JS的iOS Firebase Flashlight / ElasticSearch Heroku安装程序
- 用于语义UI的`gulp build`给出错误'ENOENT:no such file or directory'