Vue 使用beforeEach實(shí)現(xiàn)登錄狀態(tài)檢查功能
使用VueRouter的beforeEach鉤子函數(shù),可以實(shí)現(xiàn)導(dǎo)航跳轉(zhuǎn)前檢查登錄狀態(tài)的需求。
1.在登錄請(qǐng)求接口時(shí)返回用戶的信息,比如 userInfo:{userId:'123', userName:'小明'},登錄成功之后將userInfo存入store中。
2.使用beforeEach實(shí)現(xiàn)登錄狀態(tài)檢查
vueRouter.beforeEach((to, from, next) => { //store的getters中定義獲取用戶信息的函數(shù) getUser //userId為空說明用戶未登錄 let isLogin = store.getters.getUser.userId; if (!isLogin) {//未登錄 if (to.path !== '/login') {//跳轉(zhuǎn)到登錄頁 return next({path: '/login'}); }else { next(); } }else {//已登錄 if (to.path === '/login') {//跳轉(zhuǎn)到首頁 return next({path: '/index'}); } next(); } });
如果需要退出登錄,只需要將保存在store中的用戶信息置空即可。
以上這篇Vue 使用beforeEach實(shí)現(xiàn)登錄狀態(tài)檢查功能就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue.js使用v-model實(shí)現(xiàn)父子組件間的雙向通信示例
這篇文章主要介紹了vue.js使用v-model實(shí)現(xiàn)父子組件間的雙向通信,結(jié)合實(shí)例形式分析了vue.js基于v-model父子組件間的雙向通信的具體實(shí)現(xiàn)技巧,需要的朋友可以參考下2020-02-02VUE中setTimeout和setInterval自動(dòng)銷毀案例
這篇文章主要介紹了VUE中setTimeout和setInterval自動(dòng)銷毀案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-09-09vue實(shí)現(xiàn)樹形結(jié)構(gòu)增刪改查的示例代碼
其實(shí)很多公司都會(huì)有類似于用戶權(quán)限樹的增刪改查功能,本文主要介紹了vue實(shí)現(xiàn)樹形結(jié)構(gòu)增刪改查,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09Vue?Router?返回后記住滾動(dòng)條位置的實(shí)現(xiàn)方法
使用?Vue?router?創(chuàng)建?SPA(Single?Page?App),往往有這種需求:首頁是列表頁,點(diǎn)擊列表項(xiàng)進(jìn)入詳情頁,在詳情頁點(diǎn)擊返回首頁后,希望看到的是,首頁不刷新,并且滾動(dòng)條停留在之前的位置,這篇文章主要介紹了Vue?Router?返回后記住滾動(dòng)條位置的實(shí)現(xiàn)方法,需要的朋友可以參考下2023-09-09vant中的Cascader級(jí)聯(lián)選擇異步加載地區(qū)數(shù)據(jù)方式
這篇文章主要介紹了vant中的Cascader級(jí)聯(lián)選擇異步加載地區(qū)數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07vue3獲取ref實(shí)例結(jié)合ts的InstanceType問題
這篇文章主要介紹了vue3獲取ref實(shí)例結(jié)合ts的InstanceType問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03