LETG / madDog

Configuration Mviewer pour suivi littoral
2 stars 3 forks source link

Remplacer AXIOS par FETCH #96

Closed Gaetanbrl closed 1 year ago

Gaetanbrl commented 1 year ago

Version : latest

Description du bug / Describe the bug

Au démarrage, on constate que AXIOS peut ne pas être chargé / ou bien n'est pas chargé à tous les coups. Axios est une librairie externe qui n'est pas utile, car Fetch réalise la même chose, mais en étant déjà contenu dans le navigateur.

caught (in promise) ReferenceError: axios is not defined
    at prepare (main.js?_=1685090994770:15:19)
    at Object.initSearch (main.js?_=1685090994770:22:20)
    at Object.initFuseSearch (tools.js:141:42)
    at maddog.js:131:23

Reproduire le bug / To Reproduce

Etapes à suivre pour reproduire votre problème du type :

  1. Ouvrir MADDOG
  2. Voir dans la console

Comportement attendu / Expected behavior

Pouvoir réaliser des appels sans librairie externe.

Gaetanbrl commented 1 year ago

Exemple avec ce code :

https://github.com/LETG/madDog/blob/4d2d47c9a1f3d802bed62e9a109d4b810820d0bf/mviewer/maddog/addons/wfs2Fuse/main.js#L7-L15

A remplacer par ce code (en vérifiant avant ce que retourne r.json):

fetch(url)
    .then(r => r.json())
    .then(({ data }) => {
        wfs2Fuse[id] = new Fuse(
            data.features.map(d => d.properties),
            { ...options, ...o }
        );
        return resolve(data);
    })
    .catch(e => console.log(e));