При получении ответа на background.js: не отмечено runtime.lastError: не удалось установить соединение - PullRequest
1 голос
/ 07 мая 2019

noobie JS dev здесь, я разрабатываю расширение для chrome, и у меня есть 2 сценария, background.js и popup.js - мне нужно вызвать функцию в popup.js, основываясь на каком-то действии в background.js, поэтому я нашелЯ могу отправить сообщение.Это прекрасно работает для меня, но мне также нужно отправить ответ обратно в сценарий background.js, и я получаю эту ошибку в popup.html: 1

Unchecked runtime.lastError: Не удалось установить соединение.Получающий конец не существует.

Забавно, консоль из проверяет представление: фон @chrome: // extensions / регистрирует ответ нормально, но консоль от проверки всплывающих журналовundefined и показывает ошибку.

Спасибо за любую помощь.

(приведенный ниже код упрощен)

background.js:

    chrome.runtime.sendMessage('hi', response => {
      console.log(response);
    });

popup.js

chrome.runtime.onMessage.addListener(
    function (message, sender, sendResponse) {
        if (message == 'hi') {
            //some DOM actions here
            sendResponse('bye');
        }
        return true;
    });

1 Ответ

0 голосов
/ 08 мая 2019

Только что удалил return true, как предложил @wOxxOm.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...