我是全新的打字稿,我有两个类。在父类中我有:错误:无法调用其类型缺少呼叫签名的表达式
abstract class Component {
public deps: any = {};
public props: any = {};
public setProp(prop: string): any {
return <T>(val: T): T => {
this.props[prop] = val;
return val;
};
}
}
在子类我:“不能调用其类型缺乏调用签名表达”
class Post extends Component {
public toggleBody: string;
constructor() {
this.toggleBody = this.setProp('showFullBody');
}
public showMore(): boolean {
return this.toggleBody(true);
}
public showLess(): boolean {
return this.toggleBody(false);
}
}
两个相册更多>>暂和ShowLess给我的错误,
但是,setProp返回的函数DOES有一个调用签名,我认为?我想我误解了一些重要的功能类型,但我不知道它是什么。
谢谢!
'togglrBody'不应该是一个字符串,因为您希望它是一个函数 – eavidan
@eavidan是它是一个实际返回布尔值的函数。我原本以为它会返回一个字符串。那我该怎么改变它? – Justin
无论setProp如何返回,看起来像'(val:T)=> T' –
eavidan