私はtypescriptを初めて使用するので、2つのクラスがあります。私が持っている親クラスでは:
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);
}
}
showMoreとShowLessの両方で、「コールシグネチャのない型の式を呼び出すことはできません」というエラーが表示されます。
しかし、setPropが返す関数には呼び出し署名があると思いますか?関数の型付けについて何か重要なことを誤解していると思いますが、それが何かはわかりません。
ありがとう!
<T>(val: T) => T
togglrBody
あなたはそれが機能することにしたいため、文字列であってはならない