调接口如何将返回的数据全局访问

兰陵笑笑生…… 2021-05-05 01:54:12
比如第一个console.log能打印出数据,而第二个显示res未定义。这是为什么,有什么方法可以让它访问到甚至全局都能访问到吗?
...全文
202 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 1 楼 泡泡鱼_的回复:
因为你的fetchUsers是一个异步方法,返回的是一个Promise。就像你直接用$.ajax或axios。异步方法的返回值,外面当然不能直接用。你外面那次打印,与你的方法是顺序执行下去的,并不会等fetchUsers执行完。 既然你用了异步方法。那与之关联的数据操作,就放一起呗。实在是设计有需要,async+await。然后在.then内部,将需要暴露出来的值赋给当前类的一个属性就行了
具体怎么操作
  • 打赏
  • 举报
回复
引用 2 楼 烈阳,的回复:
一般是在最全局定义一个变量来接收res的值的,这样全局就能使用这个值了
具体怎么操作
  • 打赏
  • 举报
回复
引用 1 楼 泡泡鱼_的回复:
因为你的fetchUsers是一个异步方法,返回的是一个Promise。就像你直接用$.ajax或axios。异步方法的返回值,外面当然不能直接用。你外面那次打印,与你的方法是顺序执行下去的,并不会等fetchUsers执行完。 既然你用了异步方法。那与之关联的数据操作,就放一起呗。实在是设计有需要,async+await。然后在.then内部,将需要暴露出来的值赋给当前类的一个属性就行了
具体怎么操作
howcoder 2021-05-05
  • 打赏
  • 举报
回复
一般是在最全局定义一个变量来接收res的值的,这样全局就能使用这个值了
泡泡鱼_ 2021-05-05
  • 打赏
  • 举报
回复
因为你的fetchUsers是一个异步方法,返回的是一个Promise。就像你直接用$.ajax或axios。异步方法的返回值,外面当然不能直接用。你外面那次打印,与你的方法是顺序执行下去的,并不会等fetchUsers执行完。 既然你用了异步方法。那与之关联的数据操作,就放一起呗。实在是设计有需要,async+await。然后在.then内部,将需要暴露出来的值赋给当前类的一个属性就行了

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧