将道具从类传递到嵌套的功能组件

时间:2018-06-23 07:03:01

标签: reactjs

我想将道具通过类传递给嵌套函数组件,就像

import ComponentC from ...;

class ComponentA extends Component {
  ComponentB = ({propA, propB}) => (
    ...
  )
  render() {
    <ComponentC
      Component={ComponentB}
    />
  }
}

Class ComponentD extends Component {
  render() {
    <ComponentA
      propA="..."
      propB="..."
    />
  }
}

ComponentD将props(propA,propB)传递给ComponentA,它们具有嵌套函数ComponentB,并具有解构方法。

1 个答案:

答案 0 :(得分:0)

您可以尝试以下操作:

import ComponentC from ...;

class ComponentA extends Component {
  ComponentB = ({propA, propB}) => (
    ...
  )
  render() {
    <ComponentC
      Component={()=><ComponentB {...this.props}/>}
    />
  }
}

Class ComponentD extends Component {
  render() {
    <ComponentA
      propA="..."
      propB="..."
    />
  }
}

注意以下部分: ()=><ComponentB {...this.props}/>

所以我要从箭头函数返回您的ComponentB实例,并将传递给ComponentA的道具传递给ComponentB