【发布时间】:2020-11-24 04:41:36
【问题描述】:
我创建了一个聊天机器人,并希望在 useEffect Hook 中启动两个 Dialogflow API 调用。函数 1 和函数 2 都是异步 api 调用。想要的结果是它先完成函数 1,然后从函数 2 开始,但目前函数 2 的返回值比函数 1 快。
你知道我如何告诉函数 2 等到函数 1 返回一个值吗?
useEffect(
() => {
createChatSessionId();
fetchEventAnswerFromDialogflow("Startevent" + chatId, chatId); // function 1
fetchEventAnswerFromDialogflow("Frageevent1", chatId); // function 2
}, // eslint-disable-next-line
[]
);
【问题讨论】:
-
我们可以在
fetchEventAnswerFromDialogflow中使用回调吗,否则您需要使用async -await(以下答案之一中已经存在)
标签: reactjs api async-await dialogflow-es use-effect