Skip to content

Follow-up from "Resolve "Ajouter placeholder sur la page portfolio""

The following discussion from !31 (merged) should be addressed:

  • @coderabbitai started a discussion:

    🛠️ Refactor suggestion

    Améliorer la gestion des erreurs

    La gestion des erreurs pourrait être améliorée pour informer l'utilisateur en cas d'échec du chargement.

    Suggestions :

    1. Ajouter un état d'erreur
    2. Afficher un message d'erreur à l'utilisateur
    3. Utiliser un système de logging plus robuste
    +const hasError = ref(false);
    +const errorMessage = ref('');
    
     axios
       .get(props.apiRoute)
       .then((response) => {
         categories.value = response.data.categories || [];
         creations.value = response.data.creations || [];
         categoryCreations.value = creations.value;
         distributeCreations();
         isLoading.value = false;
    +    hasError.value = false;
       })
       .catch((error) => {
    -    console.error('Erreur lors de la récupération des catégories et créations', error);
    +    errorMessage.value = 'Une erreur est survenue lors du chargement du portfolio';
    +    hasError.value = true;
         isLoading.value = false;
       });
    📝 Committable suggestion

    ‼️ IMPORTANT Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

    const hasError = ref(false);
    const errorMessage = ref('');
    
    axios
        .get(props.apiRoute)
        .then((response) => {
          categories.value = response.data.categories || [];
          creations.value = response.data.creations || [];
          categoryCreations.value = creations.value;
          distributeCreations();
          isLoading.value = false;
          hasError.value = false;
        })
        .catch((error) => {
          errorMessage.value = 'Une erreur est survenue lors du chargement du portfolio';
          hasError.value = true;
          isLoading.value = false;
        });