请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

run函数中promise一直pending状态 无法拿到返回值

我在 7-2简化版的 use-async 这个函数里,run函数中无法获取到promise的返回值 如图 打印promise先是pending状态 图片描述
这个调用的接口 不是用你教程里的,是我自己用egg,js写的 实际接口是走通的 能拿到接口返回值 。我应该怎么处理这个promise图片描述

正在回答 回答被采纳积分+3

1回答

Nolan 2021-09-08 09:06:53

应该是忘了return值了吧。检查一下你外面传进来的promise,它return值了没有:先不传进useAsync,直接在外面resolve掉,看看有没有值

0 回复 有任何疑惑可以回复我~
  • 提问者 Vasesen #1
    按照你教程里写的 如果  const {login} = useAuth();  这时run(login(values))  promise一直是pengding状态 无法获取返回值, 现在把 login 从auth 获取 ,写成 auth(login(values))  promise就能获取到返回值了。
    回复 有任何疑惑可以回复我~ 2021-09-08 11:03:47
  • Nolan 回复 提问者 Vasesen #2
    auth(login(values)) 是啥;如果一直是pending的话,你先排查传进来的promise本身是不是有问题,一步步排查
    回复 有任何疑惑可以回复我~ 2021-09-08 20:03:52
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信