Я пытаюсь передать сообщения между сценарием контента и фоновым скриптом. Я хочу сохранить значение, отправляемое со справочной страницы, но я думаю, что значение застряло в области вызова сообщения. Как сохранить значение за пределами закрытия функции?Сфера применения chrome message
Content_script.js:
var color = "red";
chrome.runtime.sendMessage({method: "getLocalStorage", key: "favColor"}, function(response) {
color = response.data;
});
Background.js:
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
if (request.method == "getLocalStorage")
sendResponse({data: localStorage[request.key]});
else
sendResponse({}); // snub them.
});
Не означает ли это, что в this.color относится к сфере действия текущей функции, а не к цвету вне его. – EasilyBaffled
Обычно это было бы ... но именно поэтому я использовал 'bind' для передачи« внешней »области в обратный вызов. Вы прочитали [связанные документы] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind)? – berrberr