types: improve useRefs typing (#8117)

This commit is contained in:
neverland 2021-02-10 10:05:22 +08:00 committed by GitHub
parent 980ab18076
commit 38e3bc948d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,15 +1,15 @@
import { ref, onBeforeUpdate } from 'vue';
import { ref, Ref, onBeforeUpdate } from 'vue';
export function useRefs() {
const refs = ref([] as Element[]);
export function useRefs<T = Element>() {
const refs = ref([]) as Ref<T[]>;
onBeforeUpdate(() => {
refs.value = [];
});
const setRefs = (index: number) => (el: Element) => {
refs.value[index] = el;
const setRefs = (index: number) => (el: unknown) => {
refs.value[index] = el as T;
};
return [refs, setRefs];
return [refs, setRefs] as const;
}