收藏
回答

wx.showToast或者wx.showloading多个显示怎么去掉?

一个页面多个请求发出的时候调用的都是同一个请求方法,当请求多个接口的时候,因为request函数封装了一层,也就是说在显示loading是放在一个函数里面的,如果页面请求多个接口,loading都属于打开的,但是一个接口返回数据了,那么loading就hide了,但是其他的数据都没有返回,所以就出现请求未返回的时候loading已经消失了


所以我在想,showToast或者showLoading的hide方法能不能和setInterval一样,调用的时候返回一个数字,然后结束了,该调用哪个hide就把数字传进去


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

2 个回答

  • 同步
    同步
    2020-09-27
    function ajax(){
    	wx.showloading
    		request
    	wx.hideloading
    }
    ajax()
    ajax()
    ajax()
    
    类似这种,我都是要么改成同步方式请求
    ajax().then(()=>{
    	ajax().then(()=>{
    		ajax()
    	})
    })
    要么传值,判断是否需要显示加载条,一般最后一个请求加上 loading  。
    处理好了,交互问题不大。
    
    但是感觉楼主的思路,是不是可以参考下支付宝小程序设计的 my.hideLoading接口调用方法配合下?
    

    2020-09-27
    有用
    回复
  • 柯
    2020-09-27

    尝试简单写个计数器来判断是否隐藏loading

    2020-09-27
    有用
    回复 1
    • unull
      unull
      2020-09-28
      只能这样写了
      现在我就是这样写的,只是想提问下,看有没有更好的方法
      2020-09-28
      回复
登录 后发表内容
问题标签