VS 2019:如何禁用警告“请安装‘Microsoft.TypeScript.MSBuild’NuGet 包以在项目中启用 TypeScript 编译。”

Rom*_*kij 7 msbuild visual-studio typescript visual-studio-2019

如何禁用警告“请安装‘Microsoft.TypeScript.MSBuild’NuGet 包以在项目中启用 TypeScript 编译。”?

我不需要使用 MSBuild 进行 TS 编译 - 我使用自定义工具(webpack手动或使用开发服务器构建捆绑包)进行编译。

在此输入图像描述

将构建操作更改为“内容”后,警告仍然存在(详细信息:为“无”,这是项目中唯一的一个 ts 文件,解决方案重新启动没有帮助;但其他项目中还有其他 TS 文件,可能是它们以某种方式“迷上了”所有带有 ts 文件的项目的 MSBuild 警告)

在此输入图像描述

Mr *_*ian -1

VS 2019:如何禁用警告“请安装‘Microsoft.TypeScript.MSBuild’NuGet 包以在项目中启用 TypeScript 编译。”

您可以使用NoWarn msbuild 属性来抑制此警告。

解决方案

将其添加到您的xxx.csproj文件中:

<PropertyGroup>
        <NoWarn>xxx(the related waning code like cs0219)</NoWarn>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

==================================

更新1

由于警告没有编号,因此您无法使用NoWarn它来抑制它。

相反,您可以使用

<WarningLevel>0</WarningLevel>
Run Code Online (Sandbox Code Playgroud)

但是,它会抑制项目中的所有警告。对于您的问题,这是最好的方法,但如果您想要其他警告,则仍然存在一些缺点。

作为建议,您可以创建一个名为“测试”的新配置 (“构建” --> “配置管理器”-->单击您的项目,然后单击“配置”下拉框下的“新建” )

,然后将这些添加到xxx.csproj文件中:

<PropertyGroup Condition="'$(Configuration)'=='Test'">
      <WarningLevel>0</WarningLevel>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

可以使用测试配置来构建您的项目,它将抑制警告。

如果您想查看其他警告或处理其他警告,您可以切换到“调试”“发布”模式来构建项目。

===================

更新2

经过深入研究,我在我这边重现了您的问题:

在此输入图像描述

由于您没有在VS的MSBuild中指定TypeScript版本,所以出现错误。

其原因是您将typescript 文件的Build Action设置为TypeScript file。如果设置它,MSBuild 将识别它们并让 MSBuild 使用 Type Script 来构建它们。由于您没有使用MSBuild的TypeScript,所以会发生错误。

解决方案

您可以将每个打字稿文件的构建操作设置为内容并将自定义工具添加到npm run typescript.

在此输入图像描述

然后重新启动您的项目并再次进行测试,我确信错误将会消失。