首页 > 解决方案 > 将 React 组件作为道具传递

问题描述

在我的主要组件中,我有一个组件数组,我将它们作为道具(this.state.commonProps.leftNavItems)传递给子组件(在路由中)。当我导航到子组件的路径并渲染子组件时,我注意到作为道具传递给它的组件不是相同的实例,而是使用它们的默认值(不是当前状态为存在于父级中)。有没有办法自己传递组件实例并保持它们的状态,或者你可以只传递组件定义,因此当你将它们作为道具传递给孩子时最终会安装全新的组件?

    <Route
      exact
      path="/"
      render={props => (
        <Layout
          leftNavItems={this.state.commonProps.leftNavItems}
          /* mainItems={simulationRunRequestsMainItems} */
          mainItems={null}
        />
      )}
    />
    <Route
      exact
      path="/simulation-runs"
      render={props => (
        <div>
          <SimulationRun
            commonProps={this.state.commonProps}
            refreshSimulationRuns={this.refreshSimulationRuns}
          />
        </div>
      )}

标签: reactjs

解决方案


推荐阅读