ReactJs连接2个子组件

时间:2019-01-16 13:30:47

标签: javascript angular reactjs

如果在Angular 2中可以将两个子组件相互连接,那么如何在react js中进行管理?

1 个答案:

答案 0 :(得分:0)

A)您可以使用Redux或Flux为整个应用程序保留一个状态,您可以从决定与该状态连接的任何组件(称为存储)中访问该状态。

您可以在https://github.com/reduxjs/redux中了解有关此内容的更多信息。

B)如果两个组件都是兄弟姐妹,并且您尝试共享的状态不是您在应用程序其余部分中所关心的,则可以将状态从父级传递给两个孩子,作为道具,并且还传递了一个功能,该功能允许孩子设置父母的状态。

例如:

class Parent extends Component {
  state = {
    something: '',
  }

  changeSomething = (e) => {
    this.setState({
      something: e.target.value,
    })
  }

  render() {
    const { something, changeSomething } = this.state;
    return(
      <div>
        <ChildrenA
          something={something}
          changeSomething={changeSomething}
        >
        <ChildrenB
          something={something}
          changeSomething={changeSomething}
        >
      </div>
    );
}

现在,两个孩子都可以访问this.props.somethingthis.props.changeSomething,他们都可以更改父级的状态,并且都可以看到更改。

希望有帮助