Как перезагрузить фоновые скрипты? - PullRequest
0 голосов
/ 06 мая 2018

Согласно MDN,

Фоновые сценарии загружаются, как только расширение загружается, и остаются загруженными, пока расширение не будет отключено или удалено.

Мой фоновый скрипт меняет свое поведение в соответствии с настройками пользователя, хранящимися в localStorage. Когда пользователь меняет параметры (используя options_ui), localStorage обновляется, но поскольку фоновый скрипт остается загруженным, пользовательские параметры не учитываются. Если браузер перезагружен, параметры учитываются.

Как перезагрузить фоновый скрипт после изменения пользователем настроек?

1 Ответ

0 голосов
/ 10 мая 2018

Как сказано, может быть chrome.runtime.reload(), но лучше отправить сообщение в фоновый скрипт и обновить.

Примерно так:

chrome.runtime.onMessage.addListener( function(request, sender) 
    updateOption(request.option1)
});

в option.js:

 chrome.storage.sync.set({'option1': 'new_value'}); ....
 chrome.tabs.sendMessage(tab, {option1: 'new_value'});

С уважением

...