×TypeError:无法读取未定义的属性“ push”

时间:2018-07-20 03:47:26

标签: javascript reactjs

  92 | <Router>
  93 |   <ul>
> 94 | {this.state.movielist.map(a => <li onClick={() => this.handleClick(a.title)}>{a.title}{a.description} <button type="button" onClick={() => this.singledelete(a.title)}>delete</button> </li>)}
  95 |     </ul>
  96 |     </Router>enter code here




  68 | handleClick = (title) => {
> 69 |     this.state.movielist.push("/edit")    
  70 | }

任何人都可以帮助我为什么收到此错误

2 个答案:

答案 0 :(得分:0)

您应在点击处理程序中使用setState来更新移动列表状态变量。

答案 1 :(得分:0)

首先需要在构造函数中将movieslist定义为空白数组。

 constructor(props) {
    super(props)
    this.state = {
      movieslist: []
    };
  }

您的点击处理程序是这样的-

handleClick = (title) => {
   this.setState({ movieslist : [...this.state.movieslist,'/edit'] });
}