這篇文章帶大家了解一下不使用Vuex狀態管理,用簡單的封裝來進行登入狀態判斷的方法,希望對大家有幫助!
在專案中一定會有使用者登入狀態的判斷,所以我們需要封裝判斷登入狀態,用來滿足整個專案的應用,當然剛好不使用封裝的話,會造成耦合度高,程式碼冗餘等結果,在專案中可能常常用到vuex狀態管理來進行登入狀態的存,那如果專案用不到狀態管理,那就可以使用簡單的封裝來進行登入狀態判斷。 【相關推薦:vue.js影片教學】
我們如果想要普通封裝登入狀態的話需要兩個函數即取得儲存的token的getToken
和使用token判斷是否登入的isLogin
,我們需要在src目錄下新建一個資料夾,或是在我們封裝要求的檔案目錄下新建一個auth.js
即可。
取得token的話只需要透過使用localStorage
取得token並傳回給函數值
export function getToken() { return localStorage.getItem("token"); }
判斷登入的話僅僅需要透過呼叫getToken
獲得token的值來傳回布林值從而判斷使用者是否登入
export function isLogin() { if (getToken()) { return true; } return false; }
除此之外,項目中還會有別的地方要使用到getToken,比如說在請求頭中需要轉入token的值等
isLogin
import { isLogin } from "@/request/auth";
if else嗎,nonono,低了,隱藏分低了,來看我下面的操作
mounted() { // 登录判断,项目成功运行后启动 isLogin() ? console.log("isLogin") : (console.log("Need to login"), this.$message.error('未登录'), this.$router.push("/login") ); },
mounted的時候,也就是一般是在初始化頁面完成後的鉤子中進行登入狀態的判斷,這裡一般也是頁面取得資訊的請求函數的位置。
?:,來進行函數觸發判斷的,正常來講可能很多人會使用
if,對了,這裡的提示元件是element,大家可以根據自己元件庫的提示來進行不一樣的改變。
export function setToken(token) { return localStorage.setItem("token", token); }
web前端教學)
以上是聊聊不使用Vuex怎麼封裝登入狀態判斷的詳細內容。更多資訊請關注PHP中文網其他相關文章!