收藏
回答

求问,怎么才能先执行app.js,执行完了,才执行page里的js呢

如题,我想在app.js里用接口获取一个参数,用到page里面,显示在页面上,但是每次页面加载完了,app.js才获取到参数,这怎么办呢

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

33 个回答

  • 帽子🐾
    帽子🐾
    2018-01-15

    是的,我也是这样的,或者用楼上那位大哥函数方法,也可以

    2018-01-15
    有用
    回复
  • 姜晨
    姜晨
    2018-01-15

    我现在就是调用数据库那部分数据加载不出来,我把调用数据库的requset写在onReady函数里面

    2018-01-15
    有用
    回复
  • 帽子🐾
    帽子🐾
    2018-01-15

    我直接写在页面加载那里了

    2018-01-15
    有用
    回复
  • 姜晨
    姜晨
    2018-01-15

    问题是怎么解决的,我也遇到这样的问题了


    2018-01-15
    有用
    回复
  • 永恒君
    永恒君
    2018-01-15

    写进回调里,所有异步都分离成新函数。如下例:

    // app.js
    post_entry:  function(cb){ setTimeout(cb, 1000) },
     
    // index.js
    var app = getApp();
    Page({
      onLoad: function(){
        // 先获得 app 接口完成的数据,再进行其他操作
        app.post_entry(function(entrydata) {
          this.post_list(entrydata)
        })
      },
      post_list: function(opts, cb){ setTimeout(cb, 1000) },
      update_list: function(data, cb){ /* ... */ },
    })


    2018-01-15
    有用
    回复
  • 帽子🐾
    帽子🐾
    2018-01-11

    哦哦,好的!我试试,谢谢!

    2018-01-11
    有用
    回复
  • 小杰
    小杰
    2018-01-11

    app.js里一般只是放一些固定的值,你试想一下,如果你在app.js里去访问接口,总是需要花费时间的,甚至不一定能访问成功,所以你哪个页面需要调用接口就在哪个页面完成就行了呀

    2018-01-11
    有用
    回复
  • 小杰
    小杰
    2018-01-11

    你为什么一定要在app.js里获取那个接口呢,就可以在当前页面首先获取呀

    2018-01-11
    有用
    回复
  • 帽子🐾
    帽子🐾
    2018-01-11

    是的,app.js里有个获取数据的接口,通过结果返回数据,在显示在页面上,但是,页面onLoad时,数据接口还没执行完,没有数据,获取不到

    2018-01-11
    有用
    回复
  • 小杰
    小杰
    2018-01-11

    你的意思是你在app.js里的数据要应用到pages下的页面吗,如果是这样的话,pages在onLoad的时候获取globalData即可

    2018-01-11
    有用
    回复

正在加载...

登录 后发表内容