useHeader.ts 500 B

123456789101112131415161718192021222324
  1. interface MenuRoute {
  2. name: string
  3. icon: string
  4. action: () => void
  5. }
  6. export const useHeader = defineStore('useHeader', () => {
  7. const log = useLogger('headerStore')
  8. const menu = ref<[] | MenuRoute[]>([])
  9. const router = useRouter()
  10. function setAdditionalMenu(params: MenuRoute[]) {
  11. setTimeout(() => {
  12. log.info(params)
  13. menu.value = params
  14. }, 300)
  15. }
  16. watch(() => router.currentRoute.value, () => {
  17. menu.value = []
  18. })
  19. return { menu, setAdditionalMenu }
  20. })