标题:监听事件的运用
在项目中遇到这个样一个问题:把监听事件写在了componentWillReceiveProps中,一旦props发生改变,导致函数就会执行多次,里面的监听事件就会执行多次。
其实,监听事件秩序执行一次,在渲染前就可以,所以要写在constructor或componentDidMount中
constructor()
constructor()中完成了React数据的初始化,它接受两个参数:props和context,当想在函数内部使用这两个参数时,需使用super()传入这两个参数。
注意:只要使用了constructor()就必须写super(),否则会导致this指向错误。
componentDidMount()
组件第一次渲染完成,此时dom节点已经生成,可以在这里调用ajax请求,返回数据setState后组件会重新渲染