一、普通方式
1、動態路由引數
//路由
, component: resolve =>
require([
'../views/page/pagedetail.vue'
], resolve)},
//頁面使用
"/pagedetail/:id"
>詳情<
/router-link>
//獲取引數
this
.$route.params.id
2、params傳參(重新整理資料丟失、使用時用name進行跳轉)
, component: resolve =>
require([
'../views/page/pagedetail.vue'
], resolve)},
//頁面使用
"$router.push()"
>詳情<
/div>
//獲取引數
this
.$route.params.id
3、query傳參,重新整理頁面資料不會丟失
, component: resolve =>
require([
'../views/page/pagedetail.vue'
], resolve)},
//頁面使用
"$router.push()"
>詳情<
/div>
//獲取引數
this
.$route.query.id
二、vue-router使用props傳參
1、布林模式
, component: resolve =>
require([
'../views/page/pagedetail.vue'],
resolve)
, props:
true
//如果 props 被設定為 true,route.params 將會被設定為元件屬性},
//頁面使用 跳轉detail
"$router.push()"
>詳情<
/div>
//detail頁面使用props接收
props:
['id'
] console.
log(
this
.id)
/// 列印出111
2、物件模式
, component: resolve =>
require([
'../views/page/pagedetail.vue'],
resolve)
, props:
//如果 props 是乙個物件,它會被按原樣設定為元件屬性。當 props 是靜態的時候有用。},
//頁面使用 跳轉detail
"$router.push()"
>詳情<
/div>
//detail頁面使用props接收
props:
['name'
] console.
log(
this
.name)
//列印出test
3、函式模式
, component: resolve =>
require([
'../views/page/pagedetail.vue'],
resolve)
, props:
(route)
=>()
//這樣你便可以將引數轉換成另一種型別,將靜態值與基於路由的值結合等等},
//頁面使用 跳轉detail
push()
,params:
>詳情<
/div>
//detail頁面使用props接收
props:
['query'
,'params'
] console.
log(
this
.query)
//列印出111
console.
log(
this
.params)
//列印出test
更多詳情請檢視vue-router官方文件 Vue中的路由傳參
1.通過query獲取引數 建立路由物件,將路由物件註冊到vue例項中去 var 頁面模板物件 var router newvuerouter var vm newvue methods router router 在頁面上新增router view和router link標籤,並傳參 監聽的路由鏈...
vue傳參,元件之間傳參 路由傳參 vuex
詳見 兩種情況 params 和 query 都可以在目標元件的生命週期裡,通過 this.route 進行獲取 例 首頁中精選主題的路由傳參 精選主題 1 簡單舉例 a 一般會新建 store 資料夾,在 index.js 初始化 vuex b 在 main.js 中,引入 c 例如,在我的頁面修...
vue中元件間的傳參
1.父傳子 父元件準備乙個資料,通過自定義屬性給子元件賦值,進行傳遞 在子元件中通過 props 屬性來接收引數 2.子傳父 在子元件準備乙個資料,通過 this.emit 自定義事件 引數 進行傳遞。this.emit 相當於要執行子元件的自定義事件,並且傳入引數 在父元件中給子元件註冊好自定義事...