SCRIPT5009:'fetch'未定义

Vad*_*sky 3 javascript internet-explorer fetch node.js npm

有一些麻烦!对于我的请求,我正在使用Fetch API!

提交表单在IE中不起作用,因为"SCRIPT5009:'fetch'未定义"!

示例如何:

fetch("url",
        {
             method: "POST",
             body: JSON.stringify(data),
             headers: {
                 'Accept': 'application/json',
                 'Content-Type': 'application/json'
             }
         }).then(function (response) {
             return response.json().then(function (data)
Run Code Online (Sandbox Code Playgroud)

同时在Chrome和FF中它运行正常!我已经在尝试寻找一些冲浪谷歌的解决方案,但它没有用!

我试图在npm中安装"isomorphic-fetch"和"es6-promise",并尝试在我的.js文件中导入它,但它也不成功,控制台向我显示:"未捕获的SyntaxError:意外的令牌导入" !顺便说一下,required()函数也不行!所以我现在完全没有做什么,如何使用这些polyfill的东西和所有这些!

如果有些人有想法,请提前感谢!BR!

pon*_*tek 7

您可以使用https://github.com/github/fetch.

CDN:https://cdnjs.com/libraries/fetch

<script src="https://cdnjs.cloudflare.com/ajax/libs/fetch/2.0.3/fetch.js"></script>
Run Code Online (Sandbox Code Playgroud)

如果您需要Promisepolyfill,可以使用http://bluebirdjs.com/docs/install.html

<script src="//cdn.jsdelivr.net/bluebird/3.5.0/bluebird.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

Bluebird之前加载fetch:

<script src="//cdn.jsdelivr.net/bluebird/3.5.0/bluebird.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fetch/2.0.3/fetch.js"></script>
Run Code Online (Sandbox Code Playgroud)