Firefox WebExtensions tabs.onUpdated неверный аргумент - PullRequest
0 голосов
/ 26 июня 2018

Я создаю простое webExtension для firefox и хочу использовать tabs.onUpdated с фильтром.Я скопировал пример с сайта mozilla:

const pattern1 = "https://developer.mozilla.org/*";
const pattern2 = "https://twitter.com/mozdevnet";

const filter = {
  urls: [pattern1, pattern2]
}
function handleUpdated(tabId, changeInfo, tabInfo) {
  console.log(`Updated tab: ${tabId}`);
  console.log("Changed attributes: ", changeInfo);
  console.log("New tab Info: ", tabInfo);
}
browser.tabs.onUpdated.addListener(handleUpdated, filter);

Когда я перезагружаю свое расширение, я получаю эту ошибку в консоли:

Error: Incorrect argument types for tabs.onUpdated.  background-script.js:14:1
  makeError resource://gre/modules/Schemas.jsm:446:14
  throwError resource://gre/modules/Schemas.jsm:2138:11
  checkParameters resource://gre/modules/Schemas.jsm:2195:7
  addStub resource://gre/modules/Schemas.jsm:2381:21
  <anonymous> moz-extension://78d98d27-294e-4774-9461-dfb3dda97871/background-script.js:14:1

Я не знаю, были ли какие-то изменения в этомAPI, который еще не был задокументирован или есть какая-то другая проблема, возможно с разрешениями.

Это мои разрешения от manifest.json:

"permissions": ["activeTab", "notifications", "tabs"]

1 Ответ

0 голосов
/ 27 июня 2018

extraParameters поддерживается начиная с Firefox 61 и выше: https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/tabs/onUpdated

Если вы хотите поддерживать более старую версию, вы должны использовать оператор if в слушателе onUpdated.

...