1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- import { defineStore } from 'pinia'
- import pinia from '~src/store/init'
- import { clearStoreAll, getStore, setStore } from '~src/utils/storage'
- export const useAppStore = defineStore('main', {
- state: () => ({
- //用户信息
- userInfo: getStore('userInfo') || {},
- //菜单信息
- home: getStore('home') || 'index',
- page: getStore('page') || 'anomaly',
- buttons: getStore('buttons') || {},
- }),
- getters: {
- getUserInfo: state => state.userInfo,
- getHome: state => state.home,
- getPage: state => state.page,
- getButtons: state => state.buttons,
- },
- actions: {
- //用户信息
- setUserInfo(value) {
- this.userInfo = value
- setStore('userInfo', value)
- },
- //菜单信息
- setButtons(value) {
- this.buttons = value
- setStore('buttons', value)
- },
- setHomePage(value) {
- this.home = value
- setStore('home', value)
- },
- setPage(value) {
- this.page = value
- setStore('page', value)
- },
- getButtonsVal(value) {
- return this.buttons[value] || false
- },
- //清除缓存和token
- clearStoreData() {
- this.userInfo = null
- this.home = 'index'
- this.page = 'anomaly'
- this.buttons = null
- //清除缓存
- clearStoreAll()
- },
- },
- })
- export default function useUserStoreWidthOut() {
- return useAppStore(pinia)
- }
|