(Firefox) WebExtension 如何知道自己的版本?

ara*_*ius 4 firefox-addon-webextensions

我正在将旧版 Firefox 扩展移植到 WebExtensions。我想在运行时知道扩展本身的版本号。现在我正在做:

let extensionVersion = (function() {
  var xhr = new XMLHttpRequest();
  xhr.overrideMimeType('application/json');
  xhr.open('GET', browser.extension.getURL('manifest.json'), false);
  xhr.send(null);
  var manifest = JSON.parse(xhr.responseText);
  return manifest.version;
})();
Run Code Online (Sandbox Code Playgroud)

这种依赖于同步 XHR 的肮脏黑客。有没有更好的办法?

Dan*_*err 6

有一个用于检索清单的专用函数:

browser.runtime.getManifest().version
Run Code Online (Sandbox Code Playgroud)

https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/runtime/getManifest