Vue router錯誤跳轉(zhuǎn)到首頁("/")的問題及解決
Vue router錯誤跳轉(zhuǎn)到首頁("/")
Vue通過this.$router.push方法進行頁面的跳轉(zhuǎn)主要有兩種方式
// router/index.js
const routes = [{
?? ??? ?path: "/",
?? ??? ?name: "login",
?? ??? ?component: Login
?? ?}, {?
?? ??? ?path: "/index",
?? ??? ?name: "index"
?? ??? ?component: Index
?? ?}
]
①this.$router.push({path: "/index", query: {id: "1", name: "one"}})
②this.$router.psuh({name: "login", params: {id: "2", name: "two"}})兩種方法一個指定路徑,一個指定組件名
path對應(yīng)router中path, name對應(yīng)router中的name,一一對應(yīng)
path配合query, name配合params
如果path指定的路徑在router/index.js中不存在地址欄會跳轉(zhuǎn)但無法加載出內(nèi)容
而name指定的名稱在router/index.js中不存在會導(dǎo)致默認跳轉(zhuǎn)到"/"
Vue router 路由跳轉(zhuǎn)方法概述
一、概述
使用到Vue的項目,我們最常見使用的就是Vue配套的Vue Router庫。
那么在平日開發(fā)中,有多少種跳轉(zhuǎn)路由的方法?
二、跳轉(zhuǎn)方法
1、使用router-link標簽
使用router-link標簽,我們通常會使用到2個參數(shù),最常用的就是to參數(shù)
to參數(shù),表示你想要跳轉(zhuǎn)到的路由對象
router-link標簽,會調(diào)用router.push()方法,該方法會在你點擊瀏覽器會退按鈕的時候,無痕回退一個路由。
可以是路由路徑
<router-link to="/home">Home</router-link> <router-link :to="'/home'">Home</router-link>
也可以是路由對象,甚至還可以為其攜帶參數(shù)
<router-link :to="{ path: '/home' }">Home</router-link>
<router-link :to="{ name: 'user', params: { userId: '123' }}">User</router-link>
<router-link :to="{ path: '/register', query: { plan: 'private' }}">
? Register
</router-link>2、使用router-replace
設(shè)置 replace 屬性的話,當(dāng)點擊時,會調(diào)用 router.replace(),而不是 router.push(),所以導(dǎo)航后不會留下歷史記錄。
<router-link to="/abc" replace></router-link>
3、使用router-push
方法1和2是使用html的方法來調(diào)用,對應(yīng)的,也有使用js代碼來控制路由的方法
router.push('/users/eduardo')
router.push({ path: '/users/eduardo' })
router.push({ name: 'user', params: { username: 'eduardo' } })
router.push({ path: '/register', query: { plan: 'private' } })
router.push({ path: '/about', hash: '#team' })三、路由中params和query的區(qū)別
在上述代碼中, 發(fā)現(xiàn)給路由傳遞參數(shù),有params和query兩個不同的方式,他們的區(qū)別又是什么 ?
query是什么?
從 URL 的 search 部分提取的已解碼查詢參數(shù)的字典。就是地址中?后面的內(nèi)容,不過是已經(jīng)解析的。
params是什么?
從 path 中提取的已解碼參數(shù)字典。就是vue路由中的路徑參數(shù)
如下方代碼中的**id **字段,就是路徑參數(shù),當(dāng)使用params的時候,就可以獲取到。
const routes = [
? { path: '/users/:id', component: User },
]總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue中如何實現(xiàn)復(fù)制內(nèi)容到剪切板詳解
有些業(yè)務(wù)需求需要點擊按鈕復(fù)制鏈接,下面這篇文章主要給大家介紹了關(guān)于vue中如何實現(xiàn)復(fù)制內(nèi)容到剪切板的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-10-10
Vue3使用富文本框(wangeditor)的方法總結(jié)
項目中用到了富文本,選來選去選擇了wangeditor,下面這篇文章主要給大家介紹了關(guān)于Vue3使用富文本框(wangeditor)的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-01-01
vue-cli 3如何使用vue-bootstrap-datetimepicker日期插件
這篇文章主要介紹了vue-cli 3如何使用vue-bootstrap-datetimepicker日期插件,幫助大家更好的理解和學(xué)習(xí)使用vue框架,感興趣的朋友可以了解下2021-02-02
Vue-Router實現(xiàn)頁面正在加載特效方法示例
這篇文章主要給大家介紹了利用Vue-Router實現(xiàn)頁面正在加載特效方法示例,文中給出了詳細的示例代碼,相信對大家具有一定的參考價值,有需要的朋友們下面來一起看看吧。2017-02-02
vue如何使用element-ui 實現(xiàn)自定義分頁
這篇文章主要介紹了vue如何使用element-ui 實現(xiàn)自定義分頁,可以通過插槽實現(xiàn)自定義的分頁,本文通過實例圖文相結(jié)合給大家介紹的非常詳細,感興趣的朋友一起看看吧2024-07-07
前端VUE3項目部署到linux服務(wù)器(CentOS?7)完整步驟
這篇文章主要介紹了前端VUE3項目部署到linux服務(wù)器(CentOS?7)的相關(guān)資料,包括項目打包、連接服務(wù)器、安裝和配置Nginx、上傳文件以及配置Nginx,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2026-01-01

