javascript - 最近学习react事件处理中的bind,有一句读不懂求解答
本文介绍了javascript - 最近学习react事件处理中的bind,有一句读不懂求解答的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
this.handleLoginClick = this.handleLoginClick.bind(this);
这行代码到底实现了什么功能?求大神通俗地讲解一下
解决方案
首先,这是在ES6的写法前提下。
根本目的就是把环境跟函数绑定。既然要手动才能绑定环境跟函数,那么实际上就是说在不手动绑定的情况下,函数会丢失当前环境,也就是this。
对于你这个函数而言,你的期望是在函数执行时this是指向你这个组件的,但是真实情况下,this是指向全局,也就是window的。
所以你需要手动绑定这个this。
这个你可以通过在函数执行时打印出两种情况的this来看出区别。
这篇关于javascript - 最近学习react事件处理中的bind,有一句读不懂求解答的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文