我试图将Class作为接口用于另一个类.有了这个,我试图完成一个最新的mockClass测试.
这应该是可能的,并且是一种有利的方法,如https://angular.io/guide/styleguide#interfaces中的状态
并在此处演示:将类导出为Angular2中的接口
但奇怪的是我在VSCode 1.17.2中使用Typescript 2.5.3时遇到错误
类SpecialTest中的错误
[ts]
Class 'SpecialTest' incorrectly implements interface 'Test'.
Types have separate declarations of a private property 'name'.
Run Code Online (Sandbox Code Playgroud)
Samplecode:
class Test {
private name: string;
constructor(name: string) {
this.name = name;
}
getName() {
return this.name;
}
setName(name: string): void {
this.name = name;
}
}
class SpecialTest implements Test {
private name: string;
getName(): string {
return '';
}
setName(name: string): void {
}
}
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
编辑:使用string
而不是String
像@fenton建议的那样