方式一:query傳參
//傳參
go(){
that.$router.push({
path:'/order',//跳轉路徑
name: 'Order',//跳轉路徑的name值,不寫跳轉后頁面取不到參數
// 參數
query: {
name: 'name',
dataObj: {}
}
})
},
//跳轉后頁面取參
mounted(){
// 路由參數
let mm = this.$route.query//query包含傳遞的所有參數
},
But 瀏覽器地址欄中顯示如下,所以如果參數保密,該方式慎用啦

方式二:parms傳參
//傳參
go(){
this.$router.push({
path:'/order',//跳轉路徑
name: 'Order',//跳轉路徑的name值,不寫跳轉后頁面取不到參數
// 參數
params: {
name: 'name',
dataObj: {}
}
})
},
//跳轉后頁面取參
mounted(){
// 路由參數
let mm = this.$route.params//parms包含傳遞的所有參數
},
是的就是這么相似,但是傳遞的參數就不會顯示在地址欄了,但是有沒有注意到跳轉路徑的name值必傳是不是也不夠優雅,不傳行不行?見方式三
方式三:不傳name
不傳name需要對路由配置文件的路徑做些改動
//傳參
go(){
let num = '33'
this.$router.push({
path:'/order' + '/' + num,
})
},
//路由配置文件
{
path: '/order/:id',//路由攜帶的參數
// path: '/order',
name: 'Order',
component: Order
},
//跳轉后頁面取參
mounted(){
// 路由參數
let mm = this.$route.params//parms包含傳遞的所有參數
},
