javascript - 无法让 Edge 在我的 WebExtension 中返回 Promise

标签 javascript promise microsoft-edge microsoft-edge-extension

我正在尝试使用 background.js WebExtension 中的 browser.tabs.create() 创建一个新选项卡,如下所示:

createTab: function () {
    var newTab = browser.tabs.create({ url: someUrl });
    newTab.then(onCreated, onError);
}

在浏览器中创建新选项卡,但到达最后一行时,会抛出错误:

SCRIPT5007: Unable to get property 'then' of undefined or null reference

本地窗口显示 newTab未定义

我在这里做错了什么?我认为 .create() 会立即返回一个 Promise。我知道 create() 是一个异步函数 - 但我的调用函数不需要异步,不是吗?

如有任何帮助,我们将不胜感激。

最佳答案

我最终阅读了 Microsoft documentation (谁知道?)并发现了这个小 gem :

enter image description here

看起来相当确定;现在我只需要一个使用回调的示例......

关于javascript - 无法让 Edge 在我的 WebExtension 中返回 Promise,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47545719/

相关文章:

javascript - Angular 页面无法在长内容的 ng-bind-html 上滚动

javascript - 将嵌套回调转换为 Promise

react-native - 使用 deviceinfo 和地理位置对 native pormise.all 使用react

css - :focus-within workaround for edge

javascript - 如何选择特定元素后的所有文本节点

javascript - Timing api 中的响应结束时间

javascript - 从超链接调用函数时的 this 关键字

javascript - 返回服务对本地存储的 Angular 数据的 promise

javascript - jQuery.unique 在 Microsoft Edge 中不起作用

css - 为 Edge 浏览器添加 CSS3 星形滚动支持