2016-02-29 162 views
2

我正在使用Visual Studio Pro 2015,并启用了自动编译保存。Typescript Visual Studios 2015自动编译错误

在编译后的js文件中,我在typecript __extends函数中出现了一个错误,其中'Can not read properties of prototype of undefined'for b.prototype。

但是,每当我重建项目,错误消失,一切正常。

回答

0

这对我来说听起来像是你的课程被插入到编译好的.js文件中的顺序问题。 I had a similar problem with Visual Studio's single-file compilation functionality.当你浏览已编译的文件时,是否有任何类从基类继承而来,直到后来才在文件中定义呢?

我不知道为什么只有当编译被保存触发时才显示行为 - 这对我来说似乎很奇怪。有时编译器在猜测输出结果的顺序时似乎是非确定性的。这可能与增量编译有关?

为了解决这个问题,你可以告诉编译器,应该用<reference>标记来定义一个特定的类。

因此,举例来说,像这样的引用标签的子类:

/// <reference path="./MyBaseClass" /> 
class MyClass extends MyBaseClass { 
} 

将后出现下面的类在编译.js文件:

class MyBaseClass { 
} 
+0

谢谢,我会检查 –