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

阿贾克斯 React.js

飞云飞云

2020-03-19

在reactjs教程中,.bind(this)在ajax回调的末尾有什么用途没有它,代码是否可以正常工作?

        data: JSON.stringify({text: text}),
        success: function (data) {
            this.setState({data: data});
        }.bind(this),

第2398篇《在ajax回调结束时使用.bind(this)的目的?》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

1个回答
GilTony泡芙 2020.03.19

.bind(this)让ajax回调结束的目的this与您的react类相关。换句话说,您可以添加:

var self = this;

在ajax之外,它的工作原理相同。您的代码等于:

var self = this;
$.ajax({
    .
    .
    data: JSON.stringify({text: text}),
    success: function (data) {
        self.setState({data: data});
    },
    .
    .
});

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android