如何调试 angular 项目中损坏的 ng lint
How to debug ng lint broken in angular project
在我的 angular 应用程序中,当我 运行 nglint 我得到这个异常
Cannot read property 'check-regex' of undefined
[error] TypeError: Cannot read property 'check-regex' of undefined
at Rule.getRuleOptions (node_modules\tslint\lib\rules\maxLineLengthRule.js:51:72)
at Rule.isEnabled (node_modules\tslint\lib\rules\maxLineLengthRule.js:39:26)
at Object.loadRules (node_modules\tslint\lib\ruleLoader.js:48:22)
at Linter.getEnabledRules (node_modules\tslint\lib\linter.js:232:29)
at Linter.lint (node_modules\tslint\lib\linter.js:107:33)
at _lint (node_modules\@angular-devkit\build-angular\src\tslint\index.js:146:20)
at async _run (node_modules\@angular-devkit\build-angular\src\tslint\index.js:60:29)
有人知道如何调试它吗?有没有一种方法可以像我们编写代码一样调试它 (c#, javascript).
在浏览器中调试
打开Chrome浏览器(没有的话先安装)
安装 Node Inspector Manager 扩展程序
转到 node_modules\tslint\lib\rules\maxLineLengthRule.js:51:72
并在 debugger;
之前添加行
在您的应用程序中打开控制台并输入
node --inspect ./node_modules/@angular/cli/bin/ng lint
Chrome 将自动打开浏览器,您将能够像在浏览器中一样调试您的问题。
在 VS Code 中调试
打开(或先创建)launch.json
文件
添加如下配置:
{
"type": "node",
"request": "launch",
"name": "Debug lint",
"program": "${workspaceFolder}\node_modules\@angular\cli\bin\ng",
"cwd": "${workspaceFolder}",
"args": ["lint"],
"console": "integratedTerminal"
}
转到node_modules\tslint\lib\rules\maxLineLengthRule.js:51:72
并在那里设置断点
运行 调试 lint 配置
VS 代码应该命中该断点,您将能够对其进行调试。
在我的 angular 应用程序中,当我 运行 nglint 我得到这个异常
Cannot read property 'check-regex' of undefined
[error] TypeError: Cannot read property 'check-regex' of undefined
at Rule.getRuleOptions (node_modules\tslint\lib\rules\maxLineLengthRule.js:51:72)
at Rule.isEnabled (node_modules\tslint\lib\rules\maxLineLengthRule.js:39:26)
at Object.loadRules (node_modules\tslint\lib\ruleLoader.js:48:22)
at Linter.getEnabledRules (node_modules\tslint\lib\linter.js:232:29)
at Linter.lint (node_modules\tslint\lib\linter.js:107:33)
at _lint (node_modules\@angular-devkit\build-angular\src\tslint\index.js:146:20)
at async _run (node_modules\@angular-devkit\build-angular\src\tslint\index.js:60:29)
有人知道如何调试它吗?有没有一种方法可以像我们编写代码一样调试它 (c#, javascript).
在浏览器中调试
打开Chrome浏览器(没有的话先安装)
安装 Node Inspector Manager 扩展程序
转到
之前添加行node_modules\tslint\lib\rules\maxLineLengthRule.js:51:72
并在debugger;
在您的应用程序中打开控制台并输入
node --inspect ./node_modules/@angular/cli/bin/ng lint
Chrome 将自动打开浏览器,您将能够像在浏览器中一样调试您的问题。
在 VS Code 中调试
打开(或先创建)
launch.json
文件添加如下配置:
{ "type": "node", "request": "launch", "name": "Debug lint", "program": "${workspaceFolder}\node_modules\@angular\cli\bin\ng", "cwd": "${workspaceFolder}", "args": ["lint"], "console": "integratedTerminal" }
转到
node_modules\tslint\lib\rules\maxLineLengthRule.js:51:72
并在那里设置断点运行 调试 lint 配置
VS 代码应该命中该断点,您将能够对其进行调试。