一、聲明式導航是寫在template標簽里,通過<router-link></router-link>標簽來觸發
detail.vue詳情頁,通過.$route.params取值,注意是.$route,不是.$router
$router:路由器對象
$route:當前路由信息
二、編程式導航寫在js里,通過this.$router.push(xxx)來觸發路徑
相關 API:
1) this.$router.push(path): 相當於點擊路由鏈接(可以返回到當前路由界面) ==>> 隊列的方式(先進先出)
2) this.$router.replace(path): 用新路由替換當前路由(不可以返回到當前路由界面) ==>> 棧的方式(先進后出)
3) this.$router.back(): 請求(返回)上一個記錄路由
4) this.$router.go(-1): 請求(返回)上一個記錄路由
5) this.$router.go(1): 請求下一個記錄路由
三、params參數和query參數的區別
params傳參,和name屬性匹配,name里寫路徑,相當於post請求,地址欄不顯示請求參數
query傳參,和path屬性匹配,path里寫路徑,相當於get請求,地址欄會顯示請求參數