import {useAsyncData, AsyncData} from "#app"; import {File} from "~/models/Core/File"; import {useEntityManager} from "~/composables/data/useEntityManager"; import ApiResource from "~/models/ApiResource"; import {Ref} from "@vue/reactivity"; export const useEntityFetch = (model: typeof ApiResource, id: Ref, lazy: boolean = false): AsyncData => { const em = useEntityManager() //@ts-ignore return useAsyncData( File.entity + '_' + id.value, // TODO: je me demande si on a besoin de cette clé? (https://v3.nuxtjs.org/api/composables/use-async-data#params) () => em.fetch(File, id.value), { lazy } ) }