Vue項目中添加鎖屏功能


0. 直接上 預覽鏈接

Vue項目中添加鎖屏功能

1. 實現思路

  • ( 1 ) 設置鎖屏密碼
  • ( 2 ) 密碼存localStorage (本項目已經封裝h5的sessionStorage和localStorage)
  • ( 3 ) vuex設置 SET_LOCK state.isLock = true (為true是鎖屏狀態)
  • ( 4 ) 在路由里面判斷vuex里面的isLock(為true鎖屏狀態不能讓用戶后退url和自行修改url跳轉頁面否則可以)

(1)設置鎖屏密碼

  handleSetLock() {
      this.$refs['form'].validate(valid => {
        if (valid) {
          this.$store.commit('SET_LOCK_PASSWD', this.form.passwd)
          this.handleLock()
        }
      })
    },

( 2 ) 密碼存localStorage setStore是自己封裝的方法

  SET_LOCK_PASSWD: (state, lockPasswd) => {
      state.lockPasswd = lockPasswd
      setStore({
        name: 'lockPasswd',
        content: state.lockPasswd,
        type: 'session'
      })
    },

( 3 ) vuex設置 SET_LOCK state.isLock = true 同時存在store里面

  SET_LOCK: (state, action) => {
      state.isLock = true
      setStore({
        name: 'isLock',
        content: state.isLock,
        type: 'session'
      })
    },

( 4 ) 在路由里面判斷vuex里面的isLock

 if (store.getters.isLock && to.path !== lockPage) {
      next({
        path: lockPage
      })
      NProgress.done()

源碼地址

前端學習交流群493671066,美女多多。老司機快上車,來不及解釋了。

作者相關Vue文章

基於Vue2.0實現后台系統權限控制

前端文檔匯總

VUE2.0增刪改查附編輯添加model(彈框)組件共用

打賞 衷心的表示感謝

打賞


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM