如何在api request函数内部调用函数?

时间:2019-06-30 02:55:23

标签: node.js reactjs api

提交请求后API后如何调用该函数?与react js函数请注意,我已经创建了一个构造函数。 提交请求后API后如何调用该函数?与react js函数请注意,我已经创建了一个构造函数。

  fetchData() {
    request.get(
      {
        url: "http://test.com/api/employee"
      },
      function(error, response, body) {
        var bodyJson = JSON.parse(body);

        this.setState({
          username: "Empployee Table",
          result: bodyJson.data
        });
      }.bind(this)
    );
  }

  componentDidMount() {
    this.fetchData(); <------- WORKS FINE
  }



  handleSubmit(event) {

    var data =  {
      employee_name:"test",
      employee_salary:"123",
      employee_age:"23",
      employee_image:"sdf",
  }

    request.post({
      url: 'http://test.com/api/insert/employee',
      form: data,

    }, function (error, response, body) {

     this.fetchData(); <------- NOT WORKING

    });

    event.preventDefault();
  }

1 个答案:

答案 0 :(得分:0)

如果不绑定回调函数this则引用回调上下文。

您可以使用以下箭头功能来做到这一点,

fetchData = () => {
    request.get(
      {
        url: "http://test.com/api/employee"
      },
      (error, response, body) => {
        var bodyJson = JSON.parse(body);

        this.setState({
          username: "Empployee Table",
          result: bodyJson.data
        });
      }
    );
  }