useSideBar.ts 483 B

12345678910111213141516171819202122
  1. import { defineStore } from 'pinia'
  2. import { ref } from 'vue'
  3. export const useSideBar = defineStore('useSideBar', () => {
  4. const isVisible = ref(false)
  5. const isRendered = ref(false)
  6. function show() {
  7. if (isRendered.value === false) {
  8. isRendered.value = true
  9. isVisible.value = true
  10. }
  11. }
  12. function hide() {
  13. isVisible.value = false
  14. setTimeout(() => {
  15. isRendered.value = false
  16. }, 500)
  17. }
  18. return { isVisible, isRendered, show, hide }
  19. })