一、this.$router.push()
1、vue
1
2
3
4
5
|
< template > < div id = 'test' > < button @ click = 'goTo()' >點擊跳轉(zhuǎn)4</ button > </ div > </ template > |
2、script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
//跳轉(zhuǎn)前頁面?zhèn)鲄?shù): goTo(item) { //storageData中數(shù)據(jù)用于跳轉(zhuǎn)到下一個頁面之后,進行返回時能夠返回到跳轉(zhuǎn)之前的頁面 let storageData = { searchWords: this .keyWord, pageSize: this .paging.pageSize, pageNo: this .paging.currentPage }; //data中數(shù)據(jù)用于將本頁面中數(shù)據(jù)通過跳轉(zhuǎn)功能將其應(yīng)用到下一個頁面,與父子組件傳值同理 let data = { type: item.srcType, tableName: item.tableName, name: item.datasourceName, tableId: item.tableId, id: item.datasourceId, }; //將下一個頁面中將會用到的數(shù)據(jù)全部push到$router中 this .$router.push({ //name表示跳轉(zhuǎn)之后的資源前端訪問路徑,query用于存儲待使用數(shù)據(jù),其中page是本頁面name, name: 'onlineSearch' , query: {targetData: data ,storageData, page: 'search' , isBackSelect: true , goBackName: 'dataSearch' } }) } |
3、跳轉(zhuǎn)后的頁面中獲取上個頁面的參數(shù)值
1
2
3
4
5
|
//跳轉(zhuǎn)后頁面獲取參數(shù): mounted() { //查看是否已經(jīng)參數(shù)是否傳至跳轉(zhuǎn)之后的頁面,若傳入,則根據(jù)需求進行調(diào)用 console.log( this .$route.query.targetData;) } |
4、從跳轉(zhuǎn)后的頁面返回跳轉(zhuǎn)前頁面
1
2
3
4
5
6
7
8
9
10
11
12
|
//將返回函數(shù)寫到methods中 goBackSheet() { if ( this .$route.query.goBackName === 'dataSearch' ){ this .$router.push({ name: this .pageName, query: { storageData: this .$route.query.storageData, isBackSelect: true , } }); } } |
二、router-link跳轉(zhuǎn)
1、 通過 to 屬性指定目標(biāo)地址
query相當(dāng)于get請求,頁面跳轉(zhuǎn)的時候,可以在地址欄看到請求參數(shù);
query 刷新 不會 丟失 query里面的數(shù)據(jù);
query要用path來引入。
params相當(dāng)于post請求,參數(shù)不會再地址欄中顯示;
params 刷新 會 丟失 params里面的數(shù)據(jù);
params要用name來引入。
1
2
3
4
5
|
<!-- 命名的路由 --> < router-link :to = "{ name: 'user', params: { userId: 123 }}" @ click.native = 'goTo' >User</ router-link > <!-- 帶查詢參數(shù),下面的結(jié)果為 /register?plan=private --> < router-link :to = "{ path: 'register', query: { plan: 'private' }}" @ click.native = 'goTo' >Register</ router-link > |
2、跳轉(zhuǎn)后頁面
1
2
3
4
5
6
|
watch:{ $route(to,from){ //刷新頁面 this .$router.go(1); } } |
以上就是vue 頁面跳轉(zhuǎn)的實現(xiàn)方式的詳細內(nèi)容,更多關(guān)于vue 頁面跳轉(zhuǎn)的資料請關(guān)注服務(wù)器之家其它相關(guān)文章!
原文鏈接:https://www.cnblogs.com/qing0228/p/13933066.html