How to support promises in Internet Explorer 11?(如何支持Internet Explorer11中的承诺?)
本文介绍了如何支持Internet Explorer11中的承诺?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个简单的代码,可以在除Internet Explorer 11以外的所有浏览器上完美运行。如何使其在所有浏览器上都能运行?
Codepen
'use strict';
let promise = new Promise((resolve, reject) => {
setTimeout(() => {
resolve("result");
}, 1000);
});
promise
.then(
result => {
alert("Fulfilled: " + result);
},
error => {
alert("Rejected: " + error);
}
);
如果您希望这种类型的代码在IE11中运行(它根本不支持推荐答案的大部分内容),那么您需要获得一个第三方Promise库(如),包括该库,并将您的代码更改为使用ES5编码结构(无箭头函数,无[2-0]等.)因此,您可以在旧浏览器支持的范围内生活。
或者,您可以使用转换程序(如Babel)将ES6代码转换为可以在旧浏览器中运行的ES5代码。
以下是使用Bluebird Promise库使用ES5语法编写的代码版本:
<script src="https://cdnjs.cloudflare.com/ajax/libs/bluebird/3.3.4/bluebird.min.js"></script>
<script>
'use strict';
var promise = new Promise(function(resolve) {
setTimeout(function() {
resolve("result");
}, 1000);
});
promise.then(function(result) {
alert("Fulfilled: " + result);
}, function(error) {
alert("Rejected: " + error);
});
</script>
这篇关于如何支持Internet Explorer11中的承诺?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:如何支持Internet Explorer11中的承诺?


基础教程推荐
猜你喜欢
- 如何添加到目前为止的天数? 2022-01-01
- 检查 HTML5 拖放文件类型 2022-01-01
- Fabric JS绘制具有活动形状的多边形 2022-01-01
- 原生拖动事件后如何获取 mouseup 事件? 2022-01-01
- 在 contenteditable 中精确拖放 2022-01-01
- 即使用户允许,Gmail 也会隐藏外部电子邮件图片 2022-01-01
- fetch 是否支持原生多文件上传? 2022-01-01
- Bokeh Div文本对齐 2022-01-01
- Bootstrap 模态出现在背景下 2022-01-01
- npm start 错误与 create-react-app 2022-01-01