Не удалось отправить сообщение из popup.js на event.js - PullRequest
0 голосов
/ 04 мая 2019

Я пытаюсь отправить оценку, введенную пользователем в popup.html, на event.js через popup.js, но я не знаю, почему она не работает. Я попытался добавить предупреждение в event.js, чтобы узнать, идет ли оценка из всплывающего окна. .js и оповещение работают правильно, но я не могу выполнить желаемую работу

 event.js
 var item={
"id":"selected text",
"title":"Speak",
"contexts":["selection"]
   };
var rate; chrome.runtime.onMessage.addListener(function(request,sender,sendResponse){
    if(request.todo=="changerate")
    {
        rate=request.rate;
    }
});
 chrome.contextMenus.create(item);
chrome.contextMenus.onClicked.addListener(function(clickData){


alert(rate);
if(clickData.menuItemId=='selected text' && 
    clickData.selectionText){
    chrome.tts.speak(clickData.selectionText,{'lang':'en- 
    US','rate':parseInt(rate)});
}
   })
 /////////////////////////////////////////
popup.js
$('#submit').click(function(){
var rate=$('#rate').val();
chrome.runtime.sendMessage({todo:"changerate",rate:rate});
});

Я просто пытаюсь изменить уровень разговорной речи в зависимости от пользователя, но он не работает показывая ошибки как Не проверено runtime.lastError: Порт сообщения закрыт до получения ответа.

...