问题是我无法让 tslint 在我的 Sublime Text 3 中工作。每当我打开任何 tsx 文件时,它都会在托盘中显示“Linting...”一段时间,但随后总是显示“tslint(ok)” .即使我知道我的代码中有很多错误。我通过在终端中运行 tslint 命令来检查它,在那里我得到了一大堆错误。
这是我的环境:
Linux Ubuntu 16.04 LTS
Sublime Text v3.1.1 Build 3176
Typescript v2.9.1(全局安装)
TSLint v5.10.0(全局安装)
NVM v0.33.8
Node.js v6.11.4(通过 NVM 运行)
我已经在我的 Sublime Text 中安装了所有必要的包,如 SublimeLinter 和 SublimeLinter-tslint。
SublimeLinter 的设置内容如下:
{
"debug": true,
"linters": {
"tslint": {
"disable": false,
"args": ["--project=${folder}/"]
}
},
"paths": {
"linux": [
"/home/akbar/.nvm/versions/node/v6.11.4/bin"
]
}
}
如您所见,调试设置设置为 true,但控制台中没有错误。我还阅读了有关 tslint 不与 NVM 一起工作的信息。但是我通过在 SublimeLinter 的路径设置中添加节点可执行文件的路径来解决这个问题。
但我相信这里的问题有所不同。 TSLint 似乎可以正常工作,但它只是没有捕获 Sublime Text 中的任何错误。
最佳答案
尝试在特定的 linter 配置中添加 env
选项,它应该如下所示:
{
"linters": {
"tslint": {
"disable": false,
"env": "~/.nvm/versions/node/v12.6.0/bin",
"args": ["--project=${folder}/"]
}
},
"paths": {
"linux": [
"~/.nvm/versions/node/v12.6.0/bin"
]
}
}
这应该适用于这种环境:
- Sublime Text v3.2.1 Build 3207
- Typescript v3.5.3(全局安装)
- TSLint v5.18.0(已安装 全局)
- NVM v0.33.11
- Node.js v12.6.0(通过 NVM 运行)
参见相关问题 here
关于typescript - 无法使 tslint 与 Sublime Text 3 一起工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50829067/