0. 直接上 预览链接
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 增删改查附编辑添加 model(弹框)组件共用
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于