vue路由插件之vue-route
vue路由插件,vuer Router,使vue官方的路由管理其,和vue高度耦合
1.vue-Router的使用
import Vue from 'vue' import Router from 'vue-router' //引入路由組件 Vue.use(Router) new Router({ mode: 'history', //路由的兩種模式 hash 和history 默認(rèn)使history模式 routes: [ { path: '/', name: 'home', component: () => import(xxx.vue) }, { path: '/about', name: 'about', component: () => import() } ] })
2.路由的跳轉(zhuǎn)
this.$router.push('/path')
this.$router.push({name:'routername'})
路由的get方式傳值
this.$router.push({name:'routername',query:{id:xxx}})
路由的post方式傳值
this.$router.push({name:'routername',params:{id:xxx}})
3.路由的后退
this.$router.go(-1)
this.$router.back()
4.路由的前進(jìn)
this.$router.forward()
5.替換當(dāng)前路由,在路由歷史中不會(huì)再出現(xiàn)該路由
this.$router.replace(location)
6.當(dāng)前路由的對(duì)象屬性(一定要記得是小寫的$route,并且沒有r)
this.$route.path 當(dāng)前路由路徑 path
this.$route.name 當(dāng)前路由名稱
this.$route.params.id post方式傳參時(shí),獲取id的值
this.$route.query.id get方式傳參時(shí)獲取id的值
this.$route.hash 當(dāng)前路由的hash值,帶#
7.linkActiveClass
當(dāng)前激活的路由的class類名,默認(rèn)是"router-link-active"
8.scrollBehavior
切換路由時(shí)頁(yè)面滾動(dòng)到具體位子
9.router-link 中的tag標(biāo)簽,生成具體的標(biāo)簽的html 元素
10.router-view 路由組件具體渲染的地方
11.全部的路由鉤子函數(shù)(導(dǎo)航首位)
11.1router.beforeEach 全局前置首位
11.2router.beforeResolve 全局解析守衛(wèi)
11.3router.afterEach 全局后置守衛(wèi)
11.4beforeEnter 路由獨(dú)享守衛(wèi)
組件內(nèi)守衛(wèi)
11.5beforerouteEnter 進(jìn)入
11.6beforerouteUpdate 更新
11.7beforerouteLeave 離開
/* 全局前置守衛(wèi) */ router.beforeEach(function (to, from, next) { // to 將要進(jìn)路的路由 route // from 離開的路由 route // next 進(jìn)入下一個(gè)路由,不調(diào)用則不會(huì)進(jìn)入下一個(gè)路由 console.log('全局前置守衛(wèi)') next() }) /* 全局解析守衛(wèi) */ router.beforeResolve((to, from, next) => { // to 將要進(jìn)路的路由 route // from 離開的路由 route console.log('全局解析守衛(wèi)') next() }) /* 全局后置守衛(wèi) */ router.afterEach((to, from) => { // to 將要進(jìn)路的路由 route // from 離開的路由 route console.log('全局后置守衛(wèi)') }) /* 組件獨(dú)享守衛(wèi) */ beforeEnter(to, from, next) { console.log('組件內(nèi)獨(dú)享守衛(wèi)') next() }
beforeRouteEnter(to, from, next) { console.log('組件內(nèi)守衛(wèi)進(jìn)入') next() }, beforeRouteUpdate(to, from, next) { console.log('組件內(nèi)守衛(wèi)更新') next() }, beforeRouteLeave(to, from, next) { console.log('組件內(nèi)守衛(wèi)離開前') next() }
執(zhí)行順序,
1.前組件內(nèi)守衛(wèi)離開
2.全局前置守衛(wèi)
3.路由獨(dú)享守衛(wèi)
4.組件內(nèi)守衛(wèi)進(jìn)入
5.全局解析守衛(wèi)
6.全局后置守衛(wèi)
或者時(shí)刷新組件時(shí)(/about 跳轉(zhuǎn)到/about?id=1111)
1.全局前置守衛(wèi)
2.組件內(nèi)守衛(wèi)更新
3.全局解析守衛(wèi)
4.全局后置守衛(wèi)
總結(jié)
以上所述是小編給大家介紹的vue路由vue-route的實(shí)例代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧!
- 使用vue-route 的 beforeEach 實(shí)現(xiàn)導(dǎo)航守衛(wèi)(路由跳轉(zhuǎn)前驗(yàn)證登錄)功能
- 淺談vue-router 路由傳參的方法
- vue.js vue-router如何實(shí)現(xiàn)無(wú)效路由(404)的友好提示
- vue-router路由懶加載和權(quán)限控制詳解
- 使用Vue-Router 2實(shí)現(xiàn)路由功能實(shí)例詳解
- vue-router路由與頁(yè)面間導(dǎo)航實(shí)例解析
- Vue-router路由判斷頁(yè)面未登錄跳轉(zhuǎn)到登錄頁(yè)面的實(shí)例
- vue-router+vuex addRoutes實(shí)現(xiàn)路由動(dòng)態(tài)加載及菜單動(dòng)態(tài)加載
相關(guān)文章
Vue使用sign-canvas實(shí)現(xiàn)在線手寫簽名的實(shí)例
sign-canvas?一個(gè)基于?canvas?開發(fā),封裝于?Vue?組件的通用手寫簽名板(電子簽名板),支持?pc?端和移動(dòng)端,本文給大家分享Vue使用sign-canvas實(shí)現(xiàn)在線手寫簽名,感興趣的朋友一起看看吧2022-05-05Vue elementUI 自定義表單模板組件功能實(shí)現(xiàn)
在項(xiàng)目開發(fā)中,我們會(huì)遇到這種需求,在管理后臺(tái)添加自定義表單,在指定的頁(yè)面使用定義好的表單,這篇文章主要介紹了Vue elementUI 自定義表單模板組件,需要的朋友可以參考下2022-12-12Vue3異步數(shù)據(jù)加載組件suspense的使用方法
前端開發(fā)中異步請(qǐng)求是非常常見的事情,比如遠(yuǎn)程讀取圖片,調(diào)用后端接口等等,這篇文章主要給大家介紹了關(guān)于Vue3異步數(shù)據(jù)加載組件suspense的使用方法,suspense中文含義是懸念的意思,需要的朋友可以參考下2021-08-08Nginx同一端口部署多個(gè)前后端分離的vue項(xiàng)目完整步驟
最近做項(xiàng)目結(jié)構(gòu)優(yōu)化,前端項(xiàng)目都是部署在nginx上,想實(shí)現(xiàn)同一個(gè)端口可以訪問多個(gè)前端項(xiàng)目,所以就有了本文,這篇文章主要給大家介紹了關(guān)于Nginx同一端口部署多個(gè)前后端分離的vue項(xiàng)目的相關(guān)資料,需要的朋友可以參考下2023-10-10vue實(shí)現(xiàn)動(dòng)態(tài)控制el-table表格列的展示與隱藏
這篇文章主要介紹了vue實(shí)現(xiàn)動(dòng)態(tài)控制el-table表格列的展示與隱藏,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04