visual-studio - 使用不同版本的项目,该项目是使用不同版本的 Typescript 构建的

标签 visual-studio typescript

我目前所在的团队正在 Visual Studio 中处理一个相当大的 Typescript 项目。随着时间的推移和项目的不同版本的发布,我们在与 Visual Studio 一起安装的 Typescript 版本控制方面遇到了麻烦。

场景:

  • 已发布基于 TypeScript 1.8 的产品 v 1.1.0
  • 已发布基于 TypeScript 2.1 的产品 v 1.2.0

客户 X 报告了 1.1.0 版本的错误,团队将开始修复。

问题:

Visual Studio 当前配置为使用最新版本的 TypeScript(在本例中为 2.1),因此来自 v 1.1.0 的代码无法编译。

是的,我可以手动更改项目文件中的 typescript 版本,并在 tsc.exe 上四处移动以完成这项工作。 Typescript 也是全局安装的,但出于某种原因,他们决定 Visual Studio 将编译器安装在它自己的文件夹中,而不是访问全局安装的编译器。

希望其他人遇到过这个问题,并且有更好的方法来解决这个问题。

最佳答案

这是通过将以下参数添加到我的 .csproj 文件中解决的:

<TypeScriptCompileBlocked>True</TypeScriptCompiledBlocked>

结束运行 grunt watch 任务,使用全局安装的 TypeScript 编译器编译项目。

取自 official TypeScript docs

If you are using a different build tool to build your project (e.g. gulp, grunt , etc.) and VS for the development and debugging experience, set true in your project. This should give you all the editing support, but not the build when you hit F5.

关于visual-studio - 使用不同版本的项目,该项目是使用不同版本的 Typescript 构建的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42833358/

相关文章:

reactjs - BlueprintJS 的最小 Webpack 2 设置不会加载 CSS

visual-studio - 如何在命令行参数中将解决方案文件夹作为参数传递(用于调试)?

c# - 如果我将任何代码添加到我的 Main 方法,Visual Studio Giving 编译器错误

c# - 在 Visual Studio 中向项目添加图像

asp.net - 为什么 SSL 443 无法在 IIS Express 中为 Visual Studio Web 项目的自定义域工作?

javascript - TypeScript 不强制对函数参数进行类型检查

typescript - 技术监督委员会 : is there any way to specify no watch on the command line?

c# - Console.WriteLine 在 VS2012 中不再工作

typescript - 在 TypeScript 中将两个数组合并为一个

javascript - 按名称对数组数据进行分组