网友真实露脸自拍10p,成人国产精品秘?久久久按摩,国产精品久久久久久无码不卡,成人免费区一区二区三区

小程序模板網

解決微信小程序真機 showToast 不顯示

發布時間:2018-08-01 09:45 所屬欄目:小程序開發教程

花了一周多,終于把公司小程序做出來了。真機上測試發現調用 showToast 不顯示,或者閃一下就沒了。經過查找,發現是與 wx.showLoading 沖突了,兩者調用的是同個框。

先放上我的錯誤代碼:

 

				
  1. // 請求事件
  2. requestEvent: function() {
  3.  
  4. wx.showLoading({
  5. title: '正在加載中',
  6. })
  7. wx.request({
  8. url: '',
  9. success: function(res) {
  10. wx.showToast({
  11. title: '成功',
  12. duration: 2000
  13. })
  14. },
  15. fail: function() {
  16. wx.showToast({
  17. title: '失敗',
  18. duration: 2000
  19. })
  20. },
  21. complete: function() {
  22. wx.hideLoading()
  23. }
  24. })
  25. }

我是想請求接口后,將加載框隱藏掉,再顯示 toast 提示。但是真機上發現 showToast 不顯示。正如上面所說,兩者調用的是同個框。現在,我們分析整個流程:

1、首先顯示 loading 框;  2、然后調用 success / fail,彈框的內容由 loading 變成了 toast;  3、最后調用 onComplete 時,hideLoading 將彈框隱藏掉了;

很明顯,我們最終把 toast 框隱藏掉了。知道原因后,改起來就容易了。先調用 wx.hideLoading(),再調用 wx.showToast() 即可。

建議:

若是在網絡請求前需要調用 wx.showLoading,建議在該 success 和 fail 回調函數內第一行就調用 wx.hideLoading。即使暫時不需要 showToast 操作。因為以后需要在回調函數內添加 toast 時, 就不用再管什么順序問題了;  當 toast 和 loading 同時使用,多注意兩者的調用順序;

如下是正確代碼:

 

				
  1. // 請求事件
  2. requestEvent: function() {
  3.  
  4. wx.showLoading({
  5. title: '正在加載中',
  6. })
  7. wx.request({
  8. url: '',
  9. success: function(res) {
  10. wx.hideLoading()
  11. wx.showToast({
  12. title: '成功',
  13. duration: 2000
  14. })
  15. },
  16. fail: function() {
  17. wx.hideLoading()
  18. wx.showToast({
  19. title: '失敗',
  20. duration: 2000
  21. })
  22. }
  23. })
  24. }


易優小程序(企業版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://www.xiuhaier.com/wxmini/doc/course/24675.html 復制鏈接 如需定制請聯系易優客服咨詢:800182392 點擊咨詢
QQ在線咨詢
AI智能客服 ×