vue中實現頁面跳轉的方式有哪些?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
<template> <div id='test'> <button @click='goTo()'>點擊跳轉4</button> </div> </template>
//跳轉前頁面傳參數:
goTo(item) {
//storageData中數據用于跳轉到下一個頁面之后,進行返回時能夠返回到跳轉之前的頁面
let storageData = {
searchWords: this.keyWord,
pageSize: this.paging.pageSize,
pageNo: this.paging.currentPage
};
//data中數據用于將本頁面中數據通過跳轉功能將其應用到下一個頁面,與父子組件傳值同理
let data = {
type: item.srcType,
tableName: item.tableName,
name: item.datasourceName,
tableId: item.tableId,
id: item.datasourceId,
};
//將下一個頁面中將會用到的數據全部push到$router中
this.$router.push({
//name表示跳轉之后的資源前端訪問路徑,query用于存儲待使用數據,其中page是本頁面name,
name: 'onlineSearch',
query: {targetData: data ,storageData,
page:'search',
isBackSelect: true,
goBackName:'dataSearch'
}
})
}//跳轉后頁面獲取參數:
mounted() {
//查看是否已經參數是否傳至跳轉之后的頁面,若傳入,則根據需求進行調用
console.log(this.$route.query.targetData;)
}//將返回函數寫到methods中
goBackSheet() {
if(this.$route.query.goBackName === 'dataSearch'){
this.$router.push({
name: this.pageName,
query: {
storageData: this.$route.query.storageData,
isBackSelect: true,
}
});
}
}query相當于get請求,頁面跳轉的時候,可以在地址欄看到請求參數;
query 刷新 不會 丟失 query里面的數據;
query要用path來引入。
params相當于post請求,參數不會再地址欄中顯示;
params 刷新 會 丟失 params里面的數據;
params要用name來引入。
<!-- 命名的路由 -->
<router-link :to="{ name: 'user', params: { userId: 123 }}" @click.native='goTo'>User</router-link>
<!-- 帶查詢參數,下面的結果為 /register?plan=private -->
<router-link :to="{ path: 'register', query: { plan: 'private' }}" @click.native='goTo'>Register</router-link>watch:{
$route(to,from){
//刷新頁面
this.$router.go(1);
}
}看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。