VSCode TypeScript lint
Posted
技术标签:
【中文标题】VSCode TypeScript lint【英文标题】: 【发布时间】:2015-12-07 07:16:39 【问题描述】:使用 Visual Studio Code 开发 TypeScript 的人?我也在尝试使用它。但我没有验证(ts-lint)警告或错误。我刚刚在构建时收到这样的消息:
ts-lint start
src/constants/type.ts[22, 2]: file should end with a newline
src/constants/type.ts[6, 5]: misplaced opening brace
ts-lint end
例子:
1 == 2
JS 文件中的此类表达式会告诉我使用1 === 2
会更好。
但是 TS 文件中的这个表达式会起作用,甚至不会显示任何警告。
在打字时如何在 TypeScript 中启用此类验证?
【问题讨论】:
我使用打字稿处理 vs 代码,并且在我输入时出现错误,有时我必须保存文件才能得到错误。我也在构建时遇到错误。你能给我们一部分你应该得到错误消息的代码吗?VS代码没有这样做? 我也遇到语法和智能错误。但我没有收到 lint(代码样式)警告。我写了这个例子,当 Js 告诉我写 a === b 而不是 a == b 时。但是 VSCode 中的 Ts 对这种表达方式没有警告。 TSLint 有一个规则强制使用==
而不是 ===
,称为 triple-equals
。也许它没有启用?
我也没有将我的 TypeScript 错误视为 VSCode 内部的错误。我很好奇是否安装了 ESLint 或拥有 jsconfig.json 文件与此问题有关。
【参考方案1】:
请更新到刚刚发布的0.8.0版本的vs代码。现在支持 javascript Linting as you Type。 https://code.visualstudio.com/updates
【讨论】:
这是否包括带有 tslint 的 TypeScript linting? 不,不是。 JavaScript linting 在没有 ESLint(JSHint) 的情况下效果很好,只需在 VSCode 工作区中设置一些设置。但我找不到如何启用 TypeScript linting。 是的,这仅适用于 javascript。为什么需要 ts-lint ?打字稿是如此的好“语言”,你不能轻易犯这些错误:P【参考方案2】:我做了一些实验,遇到了类似的问题,发现我有一个 jsconfig.json
文件,该文件是在将代码转换为 TypeScript 之前创建的。在删除/重命名该文件并重新启动 VSCode 后,我的 TypeScript 编译器错误现在显示为在 VSCode 中进行构建时的错误输出,而不是关于未解决导入的看似无关的错误。
我不确定这是否与您遇到的问题相同,但希望它对您或其他人有所帮助。
【讨论】:
【参考方案3】:刚刚遇到了完全相同的问题,似乎通过在工作区设置中的 eslint.validate 数组中添加“typescript”解决了
"eslint.validate": [
"javascript",
"javascriptreact",
"typescript"
]
如果您是 VSCode 的新手。 F1 => 键入“设置” => 从下拉列表中选择“用户设置”(该登录用户的任何项目)或“工作区设置”(仅限一个项目)=> 将上述对象粘贴到右侧窗格(或扩展现有对象应该有一个)
【讨论】:
也就是说,事后看来,正确的做法是安装ts-lint plugin以上是关于VSCode TypeScript lint的主要内容,如果未能解决你的问题,请参考以下文章
如何防止 Vetur 和 TypeScript 在 VSCode 中同时显示打字稿警告?