2

对于使用 typescript 开发的 chrome 扩展,我们需要在类型文件夹中名为 chrome.d.ts 的定义文件来访问 chrome.runtime.* 或 chrome.tabs.* 等 Web 扩展 API。

对于边缘扩展,在 typescript 中开发,我们需要在类型文件夹中名为 browser.d.ts 的定义文件来访问 web 扩展 API,如 browser.runtime.*

我们如何使用节点包管理器(npm)下载此依赖项。我在我的 background.ts 扩展文件中添加了对该文件的引用,例如:

/// 参考路径="typings/browser/browser.d.ts"

4

2 回答 2

5

更新:

Firefox 的浏览器 API 及其浏览器 polyfill 库提供了类型。

不幸的是,Edge 的浏览器 API 与 Firefox 的不同。Edge 使用回调,而 Firefox 使用 Promises。这可能会或可能不会改变。

看:

于 2017-04-27T18:50:42.977 回答
2

由于您browser.d.ts只需要进行类型转换,因此此解决方案将起作用

你可以加:

declare var browser: any;

在您使用的文件顶部browser.runtime

于 2018-04-01T10:56:34.860 回答