useRefs.ts 360 B

123456789101112131415
  1. import { ref, onBeforeUpdate, Ref } from 'vue';
  2. export function useRefs(): [Ref<HTMLElement[]>, (index: number) => (el: HTMLElement) => void] {
  3. const refs = ref<HTMLElement[]>([]);
  4. onBeforeUpdate(() => {
  5. refs.value = [];
  6. });
  7. const setRefs = (index: number) => (el: HTMLElement) => {
  8. refs.value[index] = el;
  9. };
  10. return [refs, setRefs];
  11. }