繁体   English   中英

如何运行 eslint 以便我可以附加调试器?

[英]How to run eslint so that I can attach a debugger?

我正在尝试通过console.log调试eslint规则,但这不是最有效的调试方式。 我正在通过命令行运行eslint

如何运行eslint以便我可以将调试器(VSCode 调试器或 Chrome 调试器)附加到它? 我看到我可以将调试 url 传递给 VSCode,但我不知道如何获取该 url。

我发现这个指向http://eslint.org/docs/developer-guide/development的问题,但我找不到一个页面,我尝试寻找 debug/debugger/development/inspector,但没有找到文档中的任何内容。

运行eslint是在运行 NodeJS 脚本,因此您可以使用--inspect开关运行节点

  1. 获取调试地址

    1. 找到eslint脚本的位置(可能是node_modules/.bin/eslint
    2. 在检查模式下运行节点: node --inspect-brk {eslint_path} {file_path}

    例如: node --inspect-brk node_modules/.bin/eslint.

    1. 你会看到一行Debugger listening on {url} ,这是你的调试 url。
  2. 附加调试客户端。 Chrome 示例

    1. 转到 Chrome,在网址栏中输入chrome://inspect
    2. 如果选中“发现网络目标”,您应该能够在“远程目标”下看到node_modules/.bin/eslint... 在此处输入图像描述
    3. 可能会弹出一个名为“DevTools”的新 Chrome 窗口,其中源代码处于调试模式。 如果没有,请打开开发人员工具,然后单击 Node 徽标,它应该会打开窗口。 在此处输入图像描述
    4. 执行在第一条指令处停止。 您现在可以使用 Chrome 调试器了。

笔记

我们使用--inspect-brk以立即停止执行,否则执行可能会在您附加调试客户端时完成。 如果您已经在代码中添加了debugger指令,那么您可以运行--inspect ,它会在第一条debugger指令处停止。

eslint 具有--debug标志,您可以将其传递给 CLI 以便轻松访问日志

npx eslint --debug .

或者,您可以使用 debug env 标志来选择日志的子集

DEBUG="eslint:*, eslintrc:*" npx eslint --config .eslintrc.js

参考: https ://eslint.org/docs/latest/user-guide/command-line-interface#--debug-example

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM