ReactJS-如何在一个组件之间传递状态?

时间:2020-07-19 05:54:03

标签: javascript reactjs react-router react-props react-state

我一直在尝试制作一个ID扫描仪考勤系统,并且在某个时候,我想将状态值从一个组件传递到另一个兄弟组件,而又不显示该组件在另一个兄弟组件中。

Given是教室.js组件的一部分=>

    if (
      this.state.resultBarcode === this.state.stu_enrolno ||
      this.state.alt_enrolment_no === this.state.stu_enrolno
    ) {
      const { stuCardInfoObj, randomNumber } = this.state;
      this.props.firebase
        .facultySubjects(this.state.facKey, this.state.fac_college_name)
        .child(
          `${stuCardInfoObj.SubFacKey}/attendance/${this.state.date}/${randomNumber}/${this.state.stu_uid}`
        )
        .update({
          fname: this.state.profile_name,
          enrolment_no: this.state.stu_enrolno,
        })
        .then(() => {
          this.setState({ scanningCardToggle: false, isToggle: false });
          this.props.history.push(ROUTES.ATTENDEES);
        });
    } else {
      this.setState({ barcodeSuccessFailToggle: true });
    }
  }

您可以在上面的第9行(状态)上看到 ${stuCardInfoObj.SubFacKey} 。现在,只要数据流到Firebase上,并且页面使用withRouter推送历史记录 this.props.history.push(ROUTES.ATTENDEES) 重定向到它的另一个同级组件Attends.js, 我还想在Ateetee.js中传递 ${stuCardInfoObj.SubFacKey} 的值,而不在Attendee.js中显示教室.js组件。那么,我将如何实现呢?

如果有人帮助我解决上述问题,这对我来说意味着一切。

0 个答案:

没有答案