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

小程序模板網(wǎng)

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

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

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

先放上我的錯誤代碼:

 

				
  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 提示。但是真機上發(fā)現(xiàn) showToast 不顯示。正如上面所說,兩者調(diào)用的是同個框。現(xiàn)在,我們分析整個流程:

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

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

建議:

若是在網(wǎng)絡(luò)請求前需要調(diào)用 wx.showLoading,建議在該 success 和 fail 回調(diào)函數(shù)內(nèi)第一行就調(diào)用 wx.hideLoading。即使暫時不需要 showToast 操作。因為以后需要在回調(diào)函數(shù)內(nèi)添加 toast 時, 就不用再管什么順序問題了;  當(dāng) toast 和 loading 同時使用,多注意兩者的調(diào)用順序;

如下是正確代碼:

 

				
  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. }


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