this.handleLoginClick = this.handleLoginClick.bind(this);这行代码到底实现了什么功能?求大神通俗地讲解一下
1 回答
手掌心
TA贡献1942条经验 获得超3个赞
首先,这是在ES6的写法前提下。
根本目的就是把环境跟函数绑定。既然要手动才能绑定环境跟函数,那么实际上就是说在不手动绑定的情况下,函数会丢失当前环境,也就是this。
对于你这个函数而言,你的期望是在函数执行时this是指向你这个组件的,但是真实情况下,this是指向全局,也就是window的。
所以你需要手动绑定这个this。
这个你可以通过在函数执行时打印出两种情况的this来看出区别。
添加回答
举报
0/150
提交
取消