gpt4 book ai didi

javascript - 在 useEffect 钩子(Hook)的 if 条件下调用异步函数

转载 作者:行者123 更新时间:2023-11-29 17:33:57 26 4
gpt4 key购买 nike

如何在 useEffect 钩子(Hook)的 if block 中调用 redux Action :

useEffect(async () => {
if (nameId && selectedGroup === 'AGM') {
const subPeople = await getSubPeople(nameId);
}
}, [nameId, selectedGroup]);

我有两个选择框。如果此人在 name 选择框中键入内容,我会将所选的 name id 存储在 nameId 状态中。如果用户选择了一个组,我将其存储在 selectedGroup 中,因此只有当两个条件都匹配时,我才需要调用 API 端点来获取 subPeople

如果我注释这段代码没有错误。我怎样才能使代码段起作用?

最佳答案

您可以将异步逻辑移动到一个单独的函数中,并在 useEffect 中调用它,因为 useEffect 的回调本身不能是异步的:

useEffect(() => {
const getPeople = async () => {
if (nameId && selectedGroup === 'AGM') {
const subPeople = await getSubPeople(nameId);
return subPeople; // Or set the state, etc.
}
}
getPeople();
}, [nameId, selectedGroup]);

关于javascript - 在 useEffect 钩子(Hook)的 if 条件下调用异步函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58990398/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com