当我运行此代码时,“ TypeError:无法读取未定义的属性'map'”

时间:2019-05-03 20:39:37

标签: reactjs

我正在做一个带有React的网站,并且在运行此代码时收到此错误

<div>
     <p>{this.props.name}, {this.props.surname}</p>
        <h3>Choose your items</h3>
        <form>
          <div id="prova">
            {this.state.items.map((item) => {
              return (
                <div>
                  {item.name}<input type="checkbox" name={item.name}
                    onChange={(e) => this.selectItem(e.target.id)}
                    checked={item.checked} />
                </div>
              )
            })}

            <br />
            <button onClick={this.addToBasket}>Add to basket</button>
          </div>
        </form>
      </div>

3 个答案:

答案 0 :(得分:0)

this.state.items未定义。 您必须向我们展示更多代码,或者自己弄清楚为什么。

答案 1 :(得分:0)

console.log(this.state.items),您将发现它是未定义的,这是一种很好的做法,确保在呈现数据之前存在数据。

答案 2 :(得分:0)

您的代码不足以让我们回答您的问题。您至少可以向我们展示状态。但是从我所看到的来看,只需确保您的状态中的项处于数组中即可。您不能在对象上使用地图方法。