开发者问题收集

React 组件等待所需的 props 进行渲染

2016-05-18
32653

我在父组件内声明了一个组件。我想在一个文件中建立特定的 props,然后在父组件中,我希望能够一次性为子组件建立其他 props(因为它们是共享属性……大部分情况下都是)。

我的问题是子组件尝试渲染并失败,因为最初没有建立所需的 props 类型。

有没有办法告诉子组件等待所需的 props 渲染?

在 ParentComponent 渲染函数中,我调用另一个函数来运行 React.Children.map() 并将 props 附加到 ChildComponent。

<ParentComponent>
    <ChildComponent
        attribute="test_attribute"
        label="Child Component"
        type="number"
        width={3}
    />
</ParentComponent>
1个回答

您可以使用 条件渲染语句 ,仅在 props 填充时渲染子项:

let {foo, bar} = this.props;

<ParentComponent>
    { foo && bar ? <ChildComponent foo={foo} bar={bar} /> : null }
</ParentComponent>

或者,您可以渲染 <LoadingSpinner /> 或其他内容,而不是 null

Aaron Beall
2016-05-18