Dans mon projet, j'ai une fonction pour télécharger des fichiers. Lorsque le bouton sera cliqué, la fonction onDownload
sera appelée :
import {useOnDownload} from "../../use/useOnDownload" setup() { ... const loading = ref(null) onDownload = (id) => { loading.value = id await useOnDownload(id) loading.value = null } return {loading, onDownload} }
J'ai refactorisé le code API dans le fichier d'appel useOnDownload.js
car d'autres composants utilisent également le même code.
export async function useOnDownload(id) { // make api call to server with axios }
Qu'est-ce que j'ai fait de mal ? Je dois attendre la fonction useOnDownload ... pour que le chargeur fonctionne correctement.
Voici comment créer une fonction composable asynchrone à l'aide de la syntaxe d'attente asynchrone
Cliquez icipour plus d'informations
J'ai réussi à résoudre une autre méthode sans async et attendre...
Je passe le chargeur d'objet de référence à l'argument de la fonction (en option) et je le gère à partir de là...