mirror of
https://gitcode.com/yangzongzhuan/RuoYi-Vue3.git
synced 2026-05-23 11:18:36 +00:00
33 lines
880 B
TypeScript
33 lines
880 B
TypeScript
|
|
const LOCK_KEY = 'screen-lock'
|
||
|
|
const LOCK_PATH_KEY = 'screen-lock-path'
|
||
|
|
|
||
|
|
interface LockState {
|
||
|
|
isLock: boolean
|
||
|
|
lockPath: string
|
||
|
|
}
|
||
|
|
|
||
|
|
export const useLockStore = defineStore('lock', {
|
||
|
|
state: (): LockState => ({
|
||
|
|
isLock: JSON.parse(localStorage.getItem(LOCK_KEY) || 'false'),
|
||
|
|
lockPath: localStorage.getItem(LOCK_PATH_KEY) || '/index'
|
||
|
|
}),
|
||
|
|
actions: {
|
||
|
|
// 锁定屏幕,同时记录当前路径
|
||
|
|
lockScreen(currentPath: string) {
|
||
|
|
this.lockPath = currentPath || '/index'
|
||
|
|
localStorage.setItem(LOCK_PATH_KEY, this.lockPath)
|
||
|
|
this.isLock = true
|
||
|
|
localStorage.setItem(LOCK_KEY, 'true')
|
||
|
|
},
|
||
|
|
// 解锁屏幕,清除路径
|
||
|
|
unlockScreen() {
|
||
|
|
this.isLock = false
|
||
|
|
localStorage.setItem(LOCK_KEY, 'false')
|
||
|
|
this.lockPath = '/index'
|
||
|
|
localStorage.setItem(LOCK_PATH_KEY, '/index')
|
||
|
|
}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
|
||
|
|
export default useLockStore
|