Visual Studio 2013 年无法编译 .d.ts 个 TypeScript 文件

Can't compile .d.ts TypeScript files in Visual Studio 2013

我是第一次尝试 TypeScript,我已经从 nuget 下载了 angularjs.TypeScript.DefinitelyTyped 包,但我无法从中生成 JavaScript 文件。

我试过删除该文件,创建一个新的 TypeScript 文件(称为 angular.ts),这会生成一个 JavaScript 完全相同的代码。我可以保留这个文件并对其他文件做同样的事情,但看起来我应该能够编译这些类型的文件。

我还查看了项目的属性,在 TypeScript Build 下,我激活了以下选项:

  1. ECMAScript 版本:ECMAScript 5
  2. 保存时编译
  3. 允许隐式 'any' 类型
  4. 模块系统:none
  5. 在 JavaScript 输出中保留注释
  6. 生成源地图

我构建项目时没有任何错误,我添加的所有其他 .ts 文件都生成 JavaScript 文件,没有问题。我查看了这是否是一个已知的 Visual Studio 问题,但我似乎找不到太多相关信息。对此有设置还是应该自动发生?

我们在我们的应用程序中使用带有 Visual Studio 的 Typescript,但是在尝试强制 VS 2013 将 TypeScript 编译为 JavaScript 时我们也遇到了一些问题。我们选择退出 Grunt plugin,不再依赖 VS。我建议你这样做。一个警告:不要在打字稿 G运行t 任务中使用 watch。当您构建项目时,它将触发 VS 进入无限循环。相反,当您将更改应用到 .ts 文件时,Tab 切换到命令行和 运行 g运行t 任务以进行 ts->js 编译。

抱歉,如果我误解了问题,但您无法编译 d.ts 个文件。当您看到 d.ts 文件时,您可以将其视为不是用 TypeScript 编写的项目的接口。

比如我用phaser游戏引擎。所以和其他人一样,我去获取 phaser.js 文件。此时,我的 TypeScript 无法理解这个 phaser.js 文件。所以,我去获取 phaser.d.ts 文件,它包含 phaser.js 的完整 API。

所以基本上,.ts 文件将始终编译为 JavaScript,而 .d.ts 是提供使用 .js 文件的桥梁的定义文件!