首页 > 解决方案 > 检查状态以有条件地映射组件

问题描述

我有一个映射组件的映射函数。在.map映射的组件中,我试图创建一个渲染,它检查最后映射的状态,如果它相同,则不会显示它。

这是映射组件的渲染函数(到目前为止,当我希望它显示不同的日期时,它显示的日期相同)

我如何修改它以检查最后呈现的状态。到目前为止,我已经尝试将这些保存到一个变量中,但没有成功。

render() {
  console.log(
    `${this.state.previousDate} PREVIOUS DATE ${this.state.questions.Date}  DATE`
  );

  if (!(this.state.previousDate == this.state.questions.Date)) {
    if (this.state.questions.Accepted > 0) {
      this.state.previousDate = this.state.questions.Date;
      return (
        <div>
          <button
            onClick={this.checker}
            className="btn btn-primary"
            style={{ float: "right" }}
          >
            View Details
          </button>
          <h4 style={{ float: "right" }}>✔️</h4>
          <br />

          <li> {this.state.questions.Date}</li>
        </div>
      );
    } else {
      this.state.previousDate = this.state.questions.Date;
      return (
        <div>
          <h4 style={{ float: "right" }}>❌&lt;/h4>
          <br />

          <li> {this.state.questions.Date}</li>
        </div>
      );
    }
  } else {
    this.state.previousDate = this.state.questions.Date;

    return <>ok...</>;
  }
}

任何帮助深表感谢。

标签: reactjs

解决方案


推荐阅读