web-dev-qa-db-fra.com

extraction non définie dans Safari (ReferenceError: Impossible de trouver la variable: extraction)

Pour une raison quelconque, fetch ( https://fetch.spec.whatwg.org/ ) n'est pas défini dans Safari (version 9.0.3), quelqu'un sait-il pourquoi? Cela semble être la norme et fonctionne bien dans Chrome et Firefox. Impossible de trouver quelqu'un d'autre ayant le même problème

J'utilise react with redux et voici un exemple de code:

export function fetchData (url) {
  return dispatch => {
    dispatch(loading())
    fetch(url, {
      method: 'GET'
    })
    .then(response => {
      response.json()
      .then(data => {
        dispatch(success(data))
      })
    })
  }
}
21
zlwaterfield

Vous pouvez utiliser https://github.com/github/fetch polyfill pour les navigateurs non pris en charge.

npm install whatwg-fetch --save; 

Modifier: (par les commentaires)

ajouter

import 'whatwg-fetch'; 

dans chaque fichier avant d'utiliser fetch - oliviergg

35
Dmitriy

Utilisation whatwg-fetch polyfill. Si vous utilisez webpack, vous pouvez simplement l'ajouter au point d'entrée

entry: {
  app: ['whatwg-fetch', 'your-index.js']
}