也算是踩到坑了,但不是我踩到的,不過還是得說下這個問題,很嚴重,對於小白和初學者是比較有幫助的,如果使用到路由傳參,請選擇你想要的傳參方式params或者query
1.query
this.$router.push({ path: 'newApply', query: { type: item.key, typeDesc: item.value } })
2.params
this.$router.push({ name: 'newApply', params: { type: item.key, typeDesc: item.value } })
比較用法
1.用法
query要用path來引入,params要用name來引入,接收參數都是類似的,分別是this.$route.query.name和this.$route.params.name。
2.url地址顯示
query更加類似於我們ajax中get傳參,params則類似於post,說的再簡單一點,前者在瀏覽器地址欄中顯示參數,后者則不顯示
query
http://localhost:8080/workorder/newApply?type=BOX_DEPLOY&typeDesc=%E5%B0%8F%E7%99%BD%E7%9B%92%E9%83%A8%E7%BD%B2
params
http://localhost:8080/workorder/newApply
3.注意點
query刷新不會丟失query里面的數據
params刷新 會會 丟失 params里面的數據