React 组件等待渲染所需的props

IT技术 javascript reactjs
2021-05-02 19:03:04

我在父组件中声明了一个组件。我想在一个文件中建立特定的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>

或者null你可以渲染一个<LoadingSpinner />或其他东西。