ReactJS带有props的条件渲染组件的最佳方法

时间:2017-10-06 13:40:48

标签: reactjs components rendering

现在我的容器看起来像这样。但我不认为这是最好的方式。



renderAddForm() {
  if (!this.props.isFetching) {
    return <div>loading</div>;
  }
  return <AddForm {...this.props} />;
}

render() {
  return (
    <Layout>
      <PageHeader title="Ангилал нэмэх" button="Хадлгалах" href="#" />
      {this.renderAddForm()}
    </Layout>
  );
}
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:3)

你的解决方案没问题。 另一种方式可以是内联:

render() {

  let { isFetching } = this.props

  return (
    <Layout>
      <PageHeader title="Ангилал нэмэх" button="Хадлгалах" href="#" />
      {isFetching ? <div>loading</div> : <AddForm {...this.props} />}
    </Layout>
  );
}