收藏
回答

怎么等onload接口请求有返回值之后, 再调用onshow的接口请求?

目前遇到问题: 一个请求A要放在onload里面, 一个请求B要放在onshow里面; 需求=>要等B请求要拿A请求返回值做参数

回答关注问题邀请回答
收藏

6 个回答

  • Api调用师
    Api调用师
    2023-07-10

    把onload里接口请求包个promise并把引用存起来,在onshow的时候等待primise成功后再请求onshow接口

    2023-07-10
    有用 1
    回复
  • D
    D
    2023-04-18

    onload开始请求A,并记录下现在正在请求A

    onshow检查结果:

    1、A成功,请求B

    2、A失败,依次请求AB

    3、A请求中,记录下onshow调用但未请求B,在A返回结果后发现这个记录,就去继续请求B

    2023-04-18
    有用 1
    回复 6
    • 大熊
      大熊
      2023-04-18
      你这个还是要计时器
      2023-04-18
      回复
    • D
      D
      2023-04-18回复大熊
      不用啊?哪用计时器了
      2023-04-18
      回复
    • 大熊
      大熊
      2023-04-18
      那怎么记录A请求状态
      2023-04-18
      回复
    • D
      D
      2023-04-18回复大熊
      随便一个变量就行了,然后在请求的回调里在置空这个变量,或者0、1什么的都行
      2023-04-18
      回复
    • 大熊
      大熊
      2023-04-18
      不行,  页面切换 A接口每次都请求,   放onload里面就是让他接收分享参数请求一次
      2023-04-18
      回复
    查看更多(1)
  • showms
    showms
    2023-04-18

    onload注册一个回调函数onloadCallback,并且把请求A结果存一个变量OBJ,然后onshow执行的时候,如果OBJ不为空,则请求B,如果OBJ为空,也注册一个回调函数onshowCallback(等着由onloadCallback调用),当执行onshowCallback的时候请求B

    2023-04-18
    有用
    回复
  • PENG
    PENG
    2023-04-18

    async onLoad() {

    await ...

    }

    2023-04-18
    有用
    回复
  • Mr.Zhao
    Mr.Zhao
    2023-04-18

    修改需求,接口合并

    2023-04-18
    有用
    回复
  • 拾忆
    拾忆
    2023-04-18

    接口返回是异步的,你可以通过定时器来刷新看看A接口返回值后再请求B接口。

    2023-04-18
    有用
    回复 1
    • 大熊
      大熊
      2023-04-18
      这是笨办法,  除了这个还有啥好办法吗
      2023-04-18
      回复
登录 后发表内容