仅当浏览器本身不支持蓝鸟诺言时,如何使用蓝鸟诺言

时间:2018-10-04 22:25:38

标签: internet-explorer vue.js internet-explorer-11 axios bluebird

在使用bluebird发出http请求时,我想使用axios承诺支持IE11之类的浏览器,但我没有使用任何构建工具来捆绑我的客户端依赖项。我只是从HTML文件中的CDN导入bluebird库。这样做的问题是,蓝鸟诺言会立即替换导入时的本机诺言。有什么办法可以在客户端JS上执行类似的操作?

if (Promise === undefined)
{
  // Use bluebird promise
}

1 个答案:

答案 0 :(得分:0)

这应该可以解决问题,或者至少非常接近:

if (typeof Promise !== "undefined") {
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = 'path to your bluebird file.js'
    document.getElementsByTagName('head')[0].appendChild(script);
}