亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關于vue $route 和 bus的疑問。

關于vue $route 和 bus的疑問。

侃侃爾雅 2019-02-07 14:15:50
我目前遇到的問題:問題一以前我A跳轉到B通過頁面傳參的形式:domain?params=1 現在用了vue發現可以用router頁面間傳參:A頁面通過this.$router.push({name: 'orderPay', params: {id}})跳轉到B頁面。B頁面通過let orderId = this.$route.params.id獲取到id向后臺發起請求。跳轉OK。但是在B頁面原地刷新后,id肯定獲取不到。vuex暫時還沒看太多,項目小也不打算用。了解了下vue bus 所以有了另一個問題:問題二接著上面的流程,我現在有一個bus.js,里面有個vue實例:export default new Vue({  name: 'bus',  data () {    return {      addr: {        name: '',        phone: '',        area: '',        address: ''      }    }  },  beforeCreate () {  },  created () {    this.$on('getAddr', () => {      console.log('%c bus獲取地址成功', 'color:green')    })    this.$on('updateAddr', (obj) => {      this.addr = obj      console.log('%c bus地址更新成功', 'color:green')    })  }})B獲取到后臺數據后,bus.$emit('updateAddr', that.addr)傳入數據到bus,此時B再跳轉到C,C通過this.addr = bus.$emit('getAddr').addr也能夠獲取到數據,但是原地刷新后也沒有了。。目前我的思路是問題一:B頁面獲取到id馬上存sessionStorage 或者 還是只有通過url傳參問題二:bus只要有數據跟新,馬上存本地存儲請問各位有沒有更多更好的的解決方案或者思路。這個項目其實就是走一個購買流程比較簡單,A購買頁,B下單頁帶地址信息,C頁面是B跳轉過來修改地址信息。
查看完整描述

1 回答

?
LEATH

TA貢獻1936條經驗 獲得超7個贊

刷新頁面后,id還在的,但是所有變量,包括vuex中的state都是會重置的。
如果單純只是想解決url傳參問題,那么,刷新是不會重置url的,可以在created鉤子里過去id并根據id請求參數。

查看完整回答
反對 回復 2019-02-19
  • 1 回答
  • 0 關注
  • 587 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號