提问者:小点点

index.js:1警告:无法对尚未挂载的组件调用setState。 这是一个no-op,但它可能表示您的应用程序中有一个bug


这是我的密码

import React, { Component } from "react";
import axios from "axios";

class App extends Component {
  state = {
    invites: [],
  };

  constructor() {
    super();
    axios.get(`http://localhost:8080/security/allUser`).then((res) => {
      console.log(res.data);
      this.setState({ invites: res.data });
    });
  }

  render() {
    return (
      <div>
        {this.state.invites.map((invite) => (
          <h2 key={invite.id}>{invite.name}</h2>
        ))}
        <h1>Welcome</h1>
      </div>
    );
  }
}

export default App;

state和setState以前对更复杂的代码很有用。 这个一直显示相同的错误

以下是错误:

index.js:1警告:无法对尚未挂载的组件调用setState。 这是一个no-op,但它可能表示您的应用程序中有一个bug。 相反,直接将this.state分配给this.state,或者在应用程序组件中定义一个具有所需状态的state={};类属性。


共1个答案

匿名用户

添加ComponentDidMount()并在其中编写请求调用。 当组件首次加载时,ComponentDidMount函数将运行。