網站首頁 編程語言 正文
局部路由守衛path守衛
path守衛(beforeEnter)
- 代碼位置:path守衛代碼寫在route對象中(index.js文件)
- beforeEnter是一個函數,參數上沒有回調函數
- beforeEnter有三個參數:
- to參數:to是一個路由對象,表示到哪兒去(跳轉的下一個路由組件)。
- from參數:form是一個路由對象,表示從哪來(從哪個路由切換過來的)。
- next參數:next是一個函數,表示允許通過,可以繼續向下走。
- 格式:
beforeEnter(to, from, next){}
- beforeEnter執行時機:在進入到path守衛所在的路由前會被調用
// index.js
import VueRouter from 'vue-router'
import HuBei from '../pages/HuBei'
import City from '../pages/City'
const router = new VueRouter({
routes : [
{
name : 'bei',
path : '/hubei',
component : HuBei,
meta : {title : '湖北省'},
children : [
{
name : 'wh',
path : 'wuhan',
component : City,
props : true,
meta : {
isAuth : true,
title : '武漢市'
},
// path守衛
beforeEnter(to, from, next){
// 這里設置了登錄名為root
let loginName = 'root'
if(loginName === 'admin'){
next()
}else{
alert('對不起,您沒有權限')
}
}
},
{
name : 'hs',
path : 'huangshi',
component : City,
props : true,
meta : {
isAuth : true,
title : '黃石市'
}
}
]
}
]
})
export default router
// App.vue
<template>
<div>
<h2>省</h2>
<div>
<ul>
<li>
<router-link to="/hubei">湖北省</router-link>
</li>
</ul>
<router-view></router-view>
</div>
</div>
</template>
<script>
export default {
name : 'App'
}
</script>
// HuBei.vue
<template>
<div>
<h2>市</h2>
<div>
<ul>
<li>
<router-link :to="{
name : 'wh',
params : {
a1 : wh[0],
a2 : wh[1],
a3 : wh[2],
}
}">
武漢市
</router-link>
</li>
<li>
<router-link :to="{
name : 'hs',
params : {
a1 : hs[0],
a2 : hs[1],
a3 : hs[2],
}
}">
黃石市
</router-link>
</li>
</ul>
<router-view></router-view>
</div>
</div>
</template>
<script>
export default {
name : 'HuBei',
data(){
return{
wh : ['江岸區', '江漢區', '橋口區'],
hs : ['下陸區', '鐵山區', '西塞山區']
}
}
}
</script>
// City.vue
<template>
<div>
<h2>區</h2>
<ul>
<li>{{a1}}</li>
<li>{{a2}}</li>
<li>{{a3}}</li>
</ul>
</div>
</template>
<script>
export default {
name : 'City',
props : ['a1', 'a2', 'a3']
}
</script>
原文鏈接:https://blog.csdn.net/weixin_47957908/article/details/134329609
- 上一篇:沒有了
- 下一篇:沒有了
相關推薦
- 2023-03-28 react-redux及redux狀態管理工具使用詳解_React
- 2022-07-22 create-react-app腳手架核心源碼之/packages/react-scripts解讀
- 2022-05-06 詳析Python面向對象中的繼承_python
- 2022-05-19 python?字符串常用方法超詳細梳理總結_python
- 2022-07-13 Android Canvas - save() & restore()
- 2022-09-03 Python?Pandas多種添加行列數據方法總結_python
- 2022-04-03 Docker?部署RocketMQ的詳細操作_docker
- 2022-05-13 C++ std::thread 線程的傳參方式
- 欄目分類
-
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支