首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在组件首次挂载之前,是否可以使用API数据初始化组件的状态?

在组件首次挂载之前,是否可以使用API数据初始化组件的状态?
EN

Stack Overflow用户
提问于 2022-05-16 00:00:01
回答 1查看 690关注 0票数 1

在我的react应用程序中,我希望使用API数据初始化组件的状态。工作的一种方法是在useEffect()中进行API调用,然后在API调用之后设置状态,但这将发生在组件的初始挂载之后。

我只是想知道是否还有其他方法在组件初始挂载之前初始化状态?这是我试过的,但不起作用。

代码语言:javascript
运行
复制
async function getAns() {
    let output = [];
    //make api calls and assign data to output
    //.......
    return output;
  };

const [playersList, setPlayersList] = useState(getAns());

非常感谢您的建议!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-16 00:33:40

您可以在功能中使用异步等待,只有当状态有来自API调用的响应数据时才能加载组件。

代码语言:javascript
运行
复制
import React,{useState, useEffect} from 'react';

const Component = () => {
  const [playerList, setPlayerList] = useState();

 async function getAns(){

   let output = await //make api calls and assign data to output
    
   return setPlayerList(output);

  };

  useEffect(() => {
    getAns();
  }, [])

return (
  {playerList && (
    // Component jsx elements
)}
)
}

export default Component;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72253011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档