目的.bind(this)在ajax回调结束时?

前端之家收集整理的这篇文章主要介绍了目的.bind(this)在ajax回调结束时?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
从reactjs教程,在ajax回调的结尾有.bind(this)的目的是什么?代码能否正常工作没有它?
data: JSON.stringify({text: text}),success: function (data) {
            this.setState({data: data});
        }.bind(this),
它确保这将是回调中正确的对象。见 Function.prototype.bind()

反应的具体选择是:

myAjaxFunction: function(){
  $.getJSON('/something',this.handleData);
},handleData: function(data){
  this.setState({data: data});
}

这是因为React处理组件方法的绑定。

如果你运行你的原始代码没有绑定,你会得到这个错误:TypeError:undefined不是一个函数,因为这===窗口中的回调;

或在严格模式:TypeError:无法读取属性’setState’未定义,其中此===未定义在回调。

猜你在找的Ajax相关文章