收藏
回答

showLoading与hideLoading的使用能不能不影响showToast?

wx.showLoading与wx.hideLoading()的使用会影响wx.showToast的使用,导致在真机调试上出现一闪而过现象


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

2 个回答

  • 京
    03-02

    我加了个 setTimeout 搞定了(#源自 @o0o有脾气的酸奶 的回答)

    Object.defineProperty(wx, 'showToast', {
      configurable: true,
      enumerable: true,
      writable: true,
      value(obj) {
        if (obj.hideLoading) {
          wx.hideLoading();
          delete obj.hideLoading;
          setTimeout(() => {
            showToast.call(this, obj);
          }, 500);
        } else {
          showToast.call(this, obj);
        }
      }
    })
    
    03-02
    有用
    回复 3
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      03-02
      好的~
      03-02
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      03-02
      03-02
      回复
    • 京
      03-02回复o0o有脾气的酸奶
      谢谢你帮我加了 else,哈哈。最后我才发现回复了两次,一次变成回答了。
      03-02
      回复
  • o0o有脾气的酸奶
    o0o有脾气的酸奶
    2019-12-05

    你的需求是什么?

    2019-12-05
    有用
    回复 9
    • 之墨
      之墨
      2019-12-05
      就是我有一个登陆功能,登陆失败或者成功我都会有showToast提示,但是在登陆失败或者成功之前会使用wx.showLoading提示用户正在登陆,当后端响应数据实现complete时就隐wx.showLoading
      2019-12-05
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      2019-12-05回复之墨
      在showToast之前hideLoading就行啦呀
      2019-12-05
      回复
    • 之墨
      之墨
      2019-12-05
      判断多起来的话无法使showToast之前hideLoading,因为提示很多
      2019-12-05
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      2019-12-05回复之墨
      自己从写showToast,调用showToast时先调用hideLoading
      2019-12-05
      回复
    • 之墨
      之墨
      2019-12-05
      行吧
      2019-12-05
      回复
    查看更多(4)
登录 后发表内容
问题标签