我在JetBrains WebStorm中尝试使用TypeScript。
我在“person.ts”中有一个非常简单的课程:
export class Person {
constructor(public name:string, public age:number) {
}
toString() {
return this.name + ", " + this.age;
}
}
然后,在我的app.ts上,我尝试像这样导入它:
import nsp = module("person");
export class App {
start() {
var my_user:nsp.Person;
my_user = new nsp.Person("Julian", 111);
console.log( my_user.toString() );
}
}
这似乎有效。我可以使用 tsc 编译为javascript:
tsc --module AMD .\public\script\app.ts
我还在WebStorm中为TypeScript设置了FileWatcher。没关系。
但是我收到了这个恼人的错误/警告:“分配的表达式类型Person不能分配给exports.Person类型”
有什么想法吗?难道我做错了什么?这是WebStorm中的错误吗?
这是我在GitHub上的项目:https://github.com/JulianG/typescript-modularization-demo/,以防你想尝试一下。
答案 0 :(得分:6)
此错误在下一个WebStorm版本中得到修复,但在此期间您可以忽略错误或将表达式合并为一行,并查看类型推断是否有帮助:
var my_user = new nsp.Person('Julian', 111);
答案 1 :(得分:1)
修复也将包含在下一个次要版本中(6.0.2)。可能这是由WEB-7117引起的。
答案 2 :(得分:0)
文件->设置:搜索“类型不匹配”,您将看到可以禁用它们的检查。