react 父组件中绑定事件失效。

我想循环的给一个组建添加事件,但是为什么不行?


class Lesson extends Component {
  /* TODO */
  constructor(){
    super()
  }

  alertInfo(lesson,index){
    console.log(index+"-"+lesson.title)
  }


  
  render(){
    const lesson=this.props.lesson
    const index=this.props.index
    console.log(lesson)
    
    return(
      <div >
        <h1 onClick={this.alertInfo.bind(this,lesson,index)}>{ lesson.title }</h1>
        <p>{ lesson.description }</p>
      </div>      
      )

  }
}








class LessonsList extends Component {
  /* TODO */
  constructor(){
    super()
  }
  
  info(){
    console.log(666)
  }
  

  render(){
    const lessons = this.props.lessons
    console.log(lessons)
    return (
      <div>
        {
          lessons.map((item,index)=>
              <Lesson lesson={item} key={index} index={index} onClick={()=>{console.log(666)}}/>
          )
        }
      </div>
      )
  }

}
阅读 2.3k
2 个回答

Lesson 组件怎么写的啊?

新手上路,请多包涵

lesson写的不对
修改为:
class Lesson extends Component {
/ TODO /
constructor(){

super()
this.alertInfo=this.alertInfo.bind(this)

}

alertInfo(lesson,index){

console.log(index+"-"+lesson.title)

}

render(){

const {lesson,index}=this.props
console.log(lesson)

return(
  <div >
    <h1 onClick={()=>this.alertInfo(lesson,index)}>{ lesson.title }</h1>
    <p>{ lesson.description }</p>
  </div>      
  )

}
}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题