Fetch не определен в Safari (ReferenceError: Не удается найти переменную: fetch)

По какой-то причине fetch (https://fetch.spec.whatwg.org/) не определен в Safari (версия 9.0.3), знает ли кто-нибудь почему? Он кажется стандартным и отлично работает в Chrome и Firefox. Не похоже, чтобы кто-то еще имел ту же проблему

Я использую реакцию с redux, и вот пример кода:

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

Ответы

Ответ 1

Вы можете использовать https://github.com/github/fetch polyfill для неподдерживаемых браузеров.

npm install whatwg-fetch --save; 

Изменить: (за комментарий)

добавить

import 'whatwg-fetch'; 

в каждом файле перед использованием fetch-oliviergg

Ответ 2

Используйте whatwg-fetch polyfill. Если вы используете webpack, вы можете просто добавить его в точку входа

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