在Visual Studio中使用TypeScript在lib.d.ts中出现100多个错误

时间:2013-09-20 15:36:02

标签: asp.net-mvc visual-studio-2012 typescript visual-studio-2013

我有一个小型的MVC4网络应用程序,使用TypeScript作为客户端(~40 .ts文件)。

当我将TS升级到0.9.1.1时,我现在看到lib.d.ts中的100多个错误出现在Visual Studio 2012中的错误列表中。

问题是不可避免的(我们团队的所有成员在升级时都得到了相同的东西),但实际上不可能可靠地重现。一些行为:

  • 只有在某段(看似随机的)时间之后,错误才会立即出现。
  • 通常会在保存文件时触发它们。
  • 他们是这样的:

    “所有命名属性必须是字符串索引器类型'any'”

  • 的子类型
  • 从项目中删除任何.ts文件或重新启动VS会让它们消失一段时间,但它们会一直回来。
  • 编译器仍然运行,并且所有.js文件都正确生成。

我尝试在VS2012和VS2013 RC中设置一个新的空项目,然后开始逐个添加我们的TS类。在某些时候,错误将会出现,但是在确定可能启动的步骤时,回溯步骤已经证明是徒劳无功的。但是,它似乎只会在您接近15-20 .ts文件时发生。

我在这里结束了我的智慧。

PS。在错误列表中,在“项目”列下,它通常命名特定文件,而不是项目。通常它是一个定义文件,例如underscore.d.ts。为什么这会被命名为项目?

编辑:

我设法用一个.ts文件和一些定义文件重新创建它。

App.ts

module Application {
    export class Main {
        constructor(options?) {
        }
    }
}

除了最新版本:

backbone.d.ts
jquery.d.ts
underscore.d.ts
backbone.relational.d.ts

我进行了许多快速更改并保存到App.ts再现,即5秒内~10。这会建议文件权限错误吗?

2 个答案:

答案 0 :(得分:0)

似乎是因为在打字稿语言服务中进行了优化。 Visual Studio尝试部分更新信息以进行分析,但一旦分析滞后,就会发生更新命令。

临时修复是剪切文件的全部内容并将其粘贴回来,这为语言服务提供了文件的全新视图。

答案 1 :(得分:0)

转到visualstudiogallery

并确保安装了最新版本的打字稿。