小程序navigateTo和redirectTo的使用

最近公司商城項目,有個小問題,就是在商品詳情頁>購物車頁>確認下單頁>支付成功和取消支付都會前往訂單詳情頁。當時我沒想這麼多就所有跳轉都用了navigateTo,這樣作的話,第一個問題產生了,業務須要在支付成功後加多一個支付成功的頁面,這樣navigateTo就可能會超過五層限制;第二個問題就是,在確認支付頁面不管支付失敗仍是支付成功都會跳到下一級頁面,確認支付的下一個頁面返回時,應該返回到購物車頁面,不返回到確認訂單頁。小程序

首頁我想到的是,在使用頁面卸載時的生命週期,若是用戶返回了,就跳轉到購物車頁面。可是這樣的話就會出現新的問題(具體問題就不細說了)。因而我細想了一下小程序的幾個路由,發現了navifateTo和redirectTo配合使用就能夠解決業務上的兩個問題了。spa

 

注意:1.wx.navigateTo 和 wx.redirectTo 不容許跳轉到 tabbar 頁面,只能用 wx.switchTab 跳轉到 tabbar 頁面code

   2.wx.navigateTo保留當前頁面,跳轉到應用內的某個頁面,使用wx.navigateBack能夠返回到原頁面blog

         3.wx.navigateTo 不會將舊頁面出棧生命週期

         4.wx.redirectTo 會將舊頁面出棧,再將須要跳轉到的頁面入棧路由

小程序在navigateTo五層以後,就不會能再入棧。it

解決思路:商品列表     navigateTo     商品詳情     navigateTo    購物車      navigateTo     確認訂單      redirectTo       訂單詳情或者其餘頁面,這樣再其餘頁面返回的時候就是購物車了。程序

購物車再返回就是商品詳情頁,而後一直返回到商品列表頁im

 

貌似表達得有點凌亂!支付

相關文章
相關標籤/搜索