2016-03-06 18 views
18

Neden fetch (https://fetch.spec.whatwg.org/) Safari'de (Sürüm 9.0.3) tanımlanmadı, kimse nedenini biliyor mu? Standart ve Chrome ve Firefox'ta iyi çalışıyor gibi görünüyor.Safari'de tanımlanmadı (ReferenceError: Değişken bulamıyor: getirme)

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

http://caniuse.com/#search=fetch 'fetch' hiçbir Safari tarafından desteklenmektedir eklemek olabilir. –

cevap

29

desteklenmeyen tarayıcılar için https://github.com/github/fetch polyfill kullanabilirsiniz: başkasının aynı sorunu burada redux reaksiyona ve kullanıyorum

sahip bulmak gibi olamaz bazı örnek kodudur.

npm install whatwg-fetch --save; 

Düzenleme: (yorumlar başına)

getirme kullanmadan önce her dosyada

import 'whatwg-fetch'; 

eklemek - oliviergg

+0

Teşekkürler, bunu bilmeliydi. – zlwaterfield

+0

Bunu kullanıyorum (es6 vaat eden polfill de), ancak iOS'ta görüntülerken de aynı hatayı alıyorum. – Nickvda

+0

(Yorum için düzenleme mevcut değil ..): Stok Android aynı sorunu yaşıyor. – Nickvda

2

kullanın whatwg-fetch polyfill. Eğer webpack kullanırsanız , sadece giriş noktasında

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