2016-03-06 51 views
18

由於某些原因,fetchhttps://fetch.spec.whatwg.org/)未在Safari(版本9.0.3)中定義,有誰知道爲什麼?它似乎是標準,並在Chrome和Firefox中正常運行。似乎無法找到任何人有同樣的問題fetch未在Safari中定義(ReferenceError:找不到變量:獲取)

我使用與Redux的反應,這裏是一些示例代碼:

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'沒有Safari支援。 –

回答

29

可以使用https://github.com/github/fetch填充工具不支持的瀏覽器。

npm install whatwg-fetch --save; 

編輯:(每評論)

在每個文件中使用取前加

import 'whatwg-fetch'; 

- oliviergg

+0

謝謝,應該知道。 – zlwaterfield

+0

我使用的是(es6-promise polyfill),但在iOS上查看時,我仍然得到了完全相同的錯誤。 – Nickvda

+0

(無編輯可用於評論..):股票Android有同樣的問題。 – Nickvda

2

使用whatwg-fetch填充工具。 如果使用webpack,你可以只將它添加到入口點

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