[英]How to get VSCode to show TypeScript errors for files *not* open in the editor?
在我的create-react-app@2.1.8
TypeScript/React 应用程序中,TS 编译器错误仅显示在我在 VS 代码编辑器中打开的文件的问题窗格中。 因此,有时我在实际运行应用程序之前不会发现错误。
如何让 TypeScript 在我打开工作区或保存对文件的更改时自动检查所有代码文件中的编译器错误?
我尝试在package.json
中添加"watch": "tsc --watch"
作为脚本,然后在集成终端窗格中执行npm run-script watch
,但这有两个问题:
有更好的解决方案吗?
顺便说一句,这与Show projectwide TypeScript questions/errors in webstorm 相同,但与 Visual Studio Code 而不是 webstorm 的问题相同。
不幸的是,截至 2019 年 11 月,开箱即用的 VS Code 不支持此功能。 请参阅https://github.com/Microsoft/vscode/issues/13953 。
我能找到的最佳解决方法是向 tasks.json 添加一个将运行tsc --watch
的任务,并将其配置为在打开工作区或文件夹时运行。
下面是 tasks.json 的示例配置。 请注意,以下代码段中的“www”是指您要检查的带有tsconfig.json
的文件夹。 将其替换为您自己的文件夹的名称,相对于您的工作空间的根目录。
{
"version": "2.0.0",
"tasks": [
{
"label": "tsc watch",
"type": "shell",
"command": "./node_modules/.bin/tsc",
"isBackground": true,
"args": ["--watch", "--noEmit", "--project", "www"],
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"reveal": "never",
"echo": false,
"focus": false,
"panel": "dedicated"
},
"problemMatcher": "$tsc-watch",
"runOptions": {
"runOn": "folderOpen"
}
}
]
}
请注意,默认情况下似乎未启用自动运行任务。 要选择自动运行任务,请按照此处的说明进行操作: https ://stackoverflow.com/a/58866185/126352
该解决方案改编自@molinx在上面链接的 GitHub 问题中的回答,并且由于下面的@kumar303评论而得到改进。
如果您因为没有打开该引用文件/模块而从错误的引用中得到 typescript 错误。 您必须 go 到 Options->TextEditor->Javascript/typescript -> Project -> 并取消选中忽略 Visual Studio 解决方案文件。
祝你有美好的一天;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.