请教一个在 javascript 中,组件的事件绑定的问题。(和 react 应该没关系)
最近学习,浏览代码,经常看到组件里面绑定事件时,有两种用法,
不知道两者有啥关系 /区别,或者应该在什么情况下使用哪种,特来请教一下。
class A extends React.Component { handleClick(parameter) { } handleCheck = () => { } render() { return ( <component onClick={this.handleClick.bind(this, parameter)} onCheck={this.handleCheck} > </component> ) } }
如上所未,class 内的成员函数,有两种写法,一种普通的,一种 arrow function
同样,在组件属性指定时,有的需要调用.bind(this),有的就是直接引用函数了。
这两种用法,有啥不一样?
- 啥时候用普通函数写法,啥时候用 arrow function ?
- 啥时候需要 bind,啥时候直接引用?
谢谢!