Я думаю, что ошибка совершенно ясна. Проблема здесь
ReferenceError: браузер не определен
в:
let backgroundPage = browser.extension.getBackgroundPage();
Они, вероятно, ссылаются на mozilla.org документы . Вы можете проверить примеры там, чтобы увидеть, получаете ли вы ошибку или нет.
Вы можете запустить функцию непосредственно в popup . Например:
Предположим, фоновый скрипт определяет функцию foo ():
// background.js
function foo() {
console.log("I'm defined in background.js");
}
Скрипт, работающий во всплывающем окне, может вызывать эту функцию напрямую так:
// popup.js
var page = browser.extension.getBackgroundPage();
page.foo(); // -> "I'm defined in background.js"
ПРИМЕЧАНИЕ: Вопрос в том, не используете ли вы режим приватного просмотра, поскольку эта функция не может использоваться с ним. Это связано с этой ошибкой. Он всегда вернет null
.