TypeError:this.setState不是函数react js

时间:2018-03-12 08:07:28

标签: reactjs

什么事情发生setstate不起作用?!!! 你能帮我解决这个错误吗? 它只是非常简单但不起作用

 $.ajax({
   type: "POST",
   url: 'http://192.168.1.156:8000/api/v1/reports/',
   data: {'start':start.toLocaleUpperCase(),'end':end.toLocaleLowerCase()},
   success: function (result) {
     var LoginData = JSON.parse(result.reports.login);
     this.setState({Data:LoginData});
     console.log(LoginData[0].username);
     console.log(LoginData[0].last_login);
   }.bind(this),

2 个答案:

答案 0 :(得分:0)

由于异步,它无法正常工作。当执行成功函数时,这是未定义的。

答案 1 :(得分:0)

在React JS中,setState仅在事件上起作用

不要尝试

.proto

尝试

 ajaxCall() {
    $.ajax({
       type: "POST",
       url: 'http://192.168.1.156:8000/api/v1/reports/',
       data: {'start':start.toLocaleUpperCase(),'end':end.toLocaleLowerCase()},
       success: function (result) {
         var LoginData = JSON.parse(result.reports.login);
         this.setState({Data:LoginData});
         console.log(LoginData[0].username);
         console.log(LoginData[0].last_login);
       }.bind(this)
    }