我正在使用最新的WebStorm EAP 7 130.958。
自从版本6出现了Typescript支持以来,我遇到了这种错误行为。下面的示例代码中的问题在我添加的时刻将“未解析的变量”应用于ExtendedClass.ts中的BaseClass ...
///<reference path="./Interfaces.ts"/>
如果删除参考路径,则错误消失。只有当存在引用路径时,才会从仅从节点模块导入的类扩展时发生这种情况。这是如何在6到7之间完成的?
Interfaces.ts
interface IBaseClass {
str:string;
}
BaseClass.ts
///<reference path="./Interfaces.ts"/>
export class BaseClass implements IBaseClass{
constructor(public str:string){
return str+str;
}
}
ExtendedClass.ts
///<reference path="./Interfaces.ts"/>
import baseClassModule = module("./BaseClass");
class ExtendedClass extends baseClassModule.BaseClass{
constructor(public str:string){
super(str);
}
}
var extendedClass:ExtendedClass = new ExtendedClass("yo");
console.log(extendedClass);
答案 0 :(得分:3)
这是一个错误。您现在可以在ExtendedClass.ts文件中添加///<reference path="./BaseClass.ts"/>
作为解决方法。请注意WEB-7645以便在修复时收到通知。
答案 1 :(得分:0)
将其修改为“导出接口IBaseClass”,另一方面需要它。
在运行时,您可能会在加载js文件时出错。如果是这样,请创建一个空的js文件。
我的建议:使用requirejs / commonjs
时,没有带接口的文件