Files
admin-govern/src/stores/dictData.ts

33 lines
883 B
TypeScript
Raw Normal View History

2023-12-28 11:27:03 +08:00
import { defineStore } from 'pinia'
import { DICT_DATA } from '@/stores/constant/cacheKey'
import type { DictData, BasicDictData } from '@/stores/interface/index'
import { reactive } from 'vue'
export const useDictData = defineStore(
'dictData',
() => {
const state: DictData = reactive({
basic: [],
2023-12-29 10:05:09 +08:00
area: []
2024-01-02 16:34:56 +08:00
// 其他接口获取的字典,比如区域
2023-12-28 11:27:03 +08:00
})
2024-01-03 13:26:58 +08:00
const getBasicData = (code: string, arr?: string[]) => {
2024-01-02 16:34:56 +08:00
let list = []
list = state.basic.filter(item => item.code === code)[0]?.children || []
if (arr) {
2024-01-03 13:26:58 +08:00
list = list.filter(item => !arr.includes(item.code))
2024-01-02 16:34:56 +08:00
}
return list
2023-12-28 11:27:03 +08:00
}
return {
state,
getBasicData
}
},
{
persist: {
key: DICT_DATA
}
}
)