91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue通過路由實現頁面刷新的方法

發布時間:2020-08-25 16:36:19 來源:腳本之家 閱讀:126 作者:陌上寒 欄目:web開發

vue 開發微信商城項目,

需求如下:

購物車頁面跳轉到詳情頁,購物車頁面包含了多個組件,點擊結算跳轉到訂單頁面,從訂單返回時,購物車頁面沒有刷新,由于購物車組件之間通過bus實現事件傳遞,頁面跳轉(非物理返回)無法觸發beforeDestroy方法,則無法再此方法中銷毀bus方法

 beforeDestroy() {
  this.$root.Bus.$off('judge')
  this.$root.Bus.$off('refreshDetail')
  this.$root.Bus.$off('clearAll')
  this.$root.Bus.$off('upDataCart')
 },

無奈,通過beforeRouteLeave來銷毀

 beforeRouteLeave(to, from, next) {
  this.$root.Bus.$off('judge')
  this.$root.Bus.$off('refreshDetail')
  this.$root.Bus.$off('clearAll')
  this.$root.Bus.$off('upDataCart')

  next()
 },

同樣的,物理返回時無法觸發購物車的created方法,則無法觸發bus的$on方法

歸根結底,物理返回時刷新頁面則可以處理此問題

思路一

  beforeRouteEnter(to, from, next) {
   next(()=>{
     window.location.reload()
   })
  },

此方法理論貌似可行,但是頁面會狂刷不止,

最后采用了思路二,貌似是一個很low的方法,但是解決了實際問題

 this.$router.replace({ name: 'cart' })// 處理返回刷新問題
   this.$router.push({
    path: '/order/order_sure',
    query: {
     sku: sku_str,
     cart: 'cart'
    }
   })

頁面跳轉前先通過路由replace到當前頁,再跳轉到訂單頁面,返回可以自動刷新了,這個方法并不理想,如果您有更好的方法,歡迎分享

有專門的方法處理此問題,在購物車頁面,添加如下代碼即可

 // 銷毀組件,返回刷新
 deactivated() {
  this.$destroy()
 },

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

邢台市| 宝鸡市| 鹿泉市| 繁峙县| 固始县| 潢川县| 全椒县| 新蔡县| 双鸭山市| 蓬莱市| 邳州市| 应用必备| 页游| 伊通| 莱西市| 磐石市| 江油市| 富阳市| 洛川县| 治县。| 石河子市| 清新县| 乌兰察布市| 中牟县| 滦南县| 栾川县| 灵川县| 达州市| 龙陵县| 平凉市| 永寿县| 巫溪县| 攀枝花市| 佛坪县| 托里县| 隆子县| 彭州市| 台江县| 金溪县| 绥化市| 紫云|