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="aHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvYmx1ZWJpcmQvMy4zLjQvYmx1ZWJpcmQubWluLmpz"></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
- 我不能使用 json 使用 react 向我的 web api 发出 Post 请求 2022-01-01
- 为什么悬停在委托事件处理程序中不起作用? 2022-01-01
- 从原点悬停时触发 translateY() 2022-01-01
- 如何向 ipc 渲染器发送添加回调 2022-01-01
- 如何调试 CSS/Javascript 悬停问题 2022-01-01
- 如何显示带有换行符的文本标签? 2022-01-01
- 为什么我的页面无法在 Github 上加载? 2022-01-01
- 是否可以将标志传递给 Gulp 以使其以不同的方式 2022-01-01
- 使用 iframe URL 的 jQuery UI 对话框 2022-01-01