如何定义React方法的特定返回类型(打字稿)

时间:2019-03-20 20:34:10

标签: reactjs typescript jsx typescript-typings

我想定义特定反应组件的返回类型。

例如:

组件1

class ComponentFoo extends React.Component<any, any> {
   public render() {…}
}

组件2

class ComponentBar extends React.Component<any, any> {
    public renderComponentFoo() : ComponentFoo { <---
      return <ComponentFoo />
    }

    public render() {
      …
      {this.renderComponentFoo()}
      …
    }
}

像这样可能吗?

1 个答案:

答案 0 :(得分:1)

您的renderComponentFoo方法应该返回React.ReactNode

JSX / TSX只是React.createElement()周围的语法糖,它返回React.ReactNode。您不会按照当前代码的建议返回ComponentFoo的实例。