javascript - 为什么在es6在这种情况下不需要bind this
本文介绍了javascript - 为什么在es6在这种情况下不需要bind this的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
这种情况为什么不需要bind this?
class ArticleForm extends React.Component {
// ...
onCancelImageDialog = () => {
this.setState({
imageDialogOpen: false
})
}
render() {
return <Child onClick={this.onCancelImageDialog} />
}
}
这种情况需要
class ArticleForm extends React.Component {
// ...
onCancelImageDialog() {
this.setState({
imageDialogOpen: false
})
}
render() {
return <Child onClick={this.onCancelImageDialog.bind(this)} />
}
}
解决方案
()=>{}
这种形式的代码,语法规定就是(function(){}).bind(this)
,即自动添加了bind this
这篇关于javascript - 为什么在es6在这种情况下不需要bind this的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文