12345678910111213141516171819202122232425262728293031323334 |
- import { defineStore } from 'pinia';
- import { UserInfo } from './interface';
- export const useUserInfo = defineStore('userInfo', {
- state: (): UserInfo => {
- return {
- id: 0,
- userType: 0,
- userName: '',
- nickName: '',
- token: '',
- refreshToken: '',
- };
- },
- actions: {
- dataFill(state: UserInfo) {
- this.$state = { ...this.$state, ...state };
- },
- removeToken() {
- this.token = '';
- this.refreshToken = '';
- },
- setToken(token: string, type: 'auth' | 'refresh') {
- const field = type == 'auth' ? 'token' : 'refreshToken';
- this[field] = token;
- },
- getToken(type: 'auth' | 'refresh' = 'auth') {
- return type === 'auth' ? this.token : this.refreshToken;
- },
- },
- persist: {
- key: 'userInfo',
- },
- });
|