首页 > 解决方案 > 终端中 TSC 的静音输出

问题描述

我正在tsc终端中运行。

每次我保存文件时,它发出的 TypeScript 编译器:

[2:05:49 PM] 检测到文件更改。开始增量编译...
[2:05:49 PM] 发现 0 个错误。监视文件更改。

如何防止 TypeScript 编译器输出这些消息?我想在保存时进行“静默”编译,但我似乎在文档中找不到任何适用的标志。

谢谢。

标签: typescripttsctypescript-compiler-api

解决方案


根据对 TypeScript 源代码的简要了解,这似乎无法使用任何标志来抑制,因为它会在报告监视主机状态时记录(请参阅此处)。

您可以做的是按照以下链接中的步骤设置您自己的增量观察程序,并提供您自己WatchStatusReporter的不记录:

https://github.com/Microsoft/TypeScript-wiki/blob/master/Using-the-Compiler-API.md#writing-an-incremental-program-watcher

虽然这是很多工作,并且维护您自己的自定义观察程序可能会引入其自己的设置问题和限制。也许只是抑制输出?

# powershell / windows command prompt
tsc --watch >null
# bash
tsc --watch >/dev/null

但是,这也抑制了诊断,并将其限制为仅标准输出无济于事(似乎诊断未记录到标准错误)。也许最好在 TypeScript 存储库上打开一个问题以请求禁用输出监视状态。


推荐阅读