Fetch polyfill in React 没有完全工作 IE 11

这个样本很好 Chrome:


fetch/ this.props.url, {credentials:'same-origin'}/
.then/ /data/ => data.json// /
.then/ /data/ => {
if/ data.length > 0/ {
// do some stuff
} else {
console.log/'No data Richard of the Beard of the Lewis.'/;
}
}/;


我用

isomorphic-fetch

, 而且我正在波利斯与我的承诺 promise-polyfill. 我用 webpack 和 babel 编译 js.

当我执行此代码时 IE11, 执行初始数据示例,我的答案确实包含了请求的数据,但在我的Tog中没有任何内容 /我申请了 console.logs 在几个不同的地方,看看它们是否在抽搐之后 fetch completed...no go/. 我没有控制台错误,所以我假设 IE11 满足足够的编译语法 js.

有没有人有一个暗示,所以我试过了? 我需要重写我的运营商吗? fetch 一些更详细的方法 IE11 完全执行它? 此时,一切都很有用! 感谢您的任何贡献。
已邀请:

董宝中

赞同来自:

看着
isomorphic-fetch

, 包装只是一种进出口的元包
whatwg-fetch

, 或者
node-fetch

取决于您是否在浏览器或节点的上下文中。

我认为你的问题是它将使用默认节点版本 /厘米。
https://github.com/matthew-and ... %23L6
/.

作为聚合金,它只是跳过非IE,因为浏览器支持默认示例。 在 IE11 使用聚填充物,但它是一个节点Polyfel,它在浏览器中不起作用。

你可以强迫 webpack 使用浏览器版本,包括特定版本的浏览器:


require/'isomorphic-fetch/fetch-npm-browserify'/


或者


import 'isomorphic-fetch/fetch-npm-browserify'


或配置 Webpack:


entry: [
'isomorphic-fetch/fetch-npm-browserify',
'app.js'
]

帅驴

赞同来自:

所以,这就是我最终使用的是我为我工作:


require/'es6-promise'/.polyfill//;
require/'fetch-everywhere'/;


我尝试了另外两个被宣传的样本作为魔法和优雅,但上面的组合是最终允许我到达 REST 的 IE 在我的代码中的不兼容。 :/

要回复问题请先登录注册