【发布时间】:2020-06-06 22:21:35
【问题描述】:
我无法在第三个请求中将 id_one 和 id_two 添加到我的正文中。第一个和第二个请求都成功了。下面是我的单个函数与多个 api 请求的演示。实际上,如果我console.log(one or two) 它将显示id_one 和id_two 但是当我尝试在reqThreeApi 中使用它时,它给我一个undefined 错误id_one 和id_two。
const handleAction = async (props) => {
reqOneApi(
body,
res => { setOne(res.data.id_one) },
err => { err.response.data) }
)
reqTwoApi(
body,
res => { setTwo(res.data.id_two) },
err => { err.response.data) }
)
reqThreeApi(
{ setOne_id: setOne, setTwo_id: setTwo },
res => { console.log('get setOne and setTwo', res.data) },
err => { err.response.data)} }
)
};
【问题讨论】:
-
setOne和setTwo是什么?反应useStatesetter?您可能需要将reqThreeApi放入具有依赖关系[one, two]的useEffect钩子中,并且当设置了两个值时,触发第三个请求。另一种模式是等待前两个 API 调用的解析值(handleAction 已经是异步函数)以使这些值可用于进行第三个 API 调用。您能否更新您的问题以包含所有三个功能?
标签: reactjs react-native axios