收藏
回答

怎么保证一个函数在page的onLoad前执行完成

有这么一个需要,我在app.js的onLaunch钩子中有一个请求接口方法,然后我的page的onLoad中也有请求接口的方法。

我希望前者执行完成,再执行后者。

请问有什么办法可以实现呢?


最后一次编辑于  2019-06-25
回答关注问题邀请回答
收藏

2 个回答

  • ʚ青哥ɞ
    ʚ青哥ɞ
    2019-06-25

    默认app.js的onLaunch会比page的onLoad先执行,一个是小程序刚加载,一个是页面刚加载。你试过了吗

    2019-06-25
    赞同
    回复 5
    • one for all
      one for all
      2019-06-25

      因为请求需要时间,先执行的不一定先结束

      2019-06-25
      回复
    • ʚ青哥ɞ
      ʚ青哥ɞ
      2019-06-25回复one for all

      要看具体情况咯

      2019-06-25
      回复
    • shawbs
      shawbs
      2019-06-26

      这个我是知道的,只是接口请求是异步的,不能保证onLaunch中的方法先于onLoad执行完成。

      假设我在onLaunch中有一个获取token的步骤,而我onLoad中有一个获取用户信息的步骤,而后者是依赖前者的token的,顺序的前后,可能导致我获取直接失败

      2019-06-26
      1
      回复
    • D.h
      D.h
      2019-09-26
      知道怎样做了吗?
      2019-09-26
      回复
    • 英忠通信
      英忠通信
      2019-10-10
      那个似乎难以掌控。或者在page内放一个 settimeout 事件来自动执行,也能达到你滴目的吧
      2019-10-10
      回复
  • one for all
    one for all
    2019-06-25

    callback

    2019-06-25
    赞同
    回复
登录 后发表内容