lock.ts 644 B

123456789101112131415161718192021222324252627282930313233
  1. import { defineStore } from 'pinia';
  2. interface AppState {
  3. /**
  4. * 是否锁屏状态
  5. */
  6. isLockScreen: boolean;
  7. /**
  8. * 锁屏密码
  9. */
  10. lockScreenPassword?: string;
  11. }
  12. export const useLockStore = defineStore('core-lock', {
  13. actions: {
  14. lockScreen(password: string) {
  15. this.isLockScreen = true;
  16. this.lockScreenPassword = password;
  17. },
  18. unlockScreen() {
  19. this.isLockScreen = false;
  20. this.lockScreenPassword = undefined;
  21. },
  22. },
  23. persist: {
  24. pick: ['isLockScreen', 'lockScreenPassword'],
  25. },
  26. state: (): AppState => ({
  27. isLockScreen: false,
  28. lockScreenPassword: undefined,
  29. }),
  30. });