Мне нужно подключить свою базу данных FireStore с расширением Chrome, и сценарий таков:
- Я, например, на странице Википедии и нажимаю кнопку входа в
действие браузера и отправьте chrome.runtime.sendMessage ('auth')
- в background.js, я использую chrome.runtime.onMessage.addListener (получатель), чтобы получить это событие щелчка и войти в систему firebase
- После успешного входа в систему, я отправляю следующее сообщение (например, chrome.runtime.sendMessage ('test');)
- Тем не менее я нахожусь на странице википедии и в console.log (в инструментах основного разработчика) Мне нужно увидеть последнее сообщение ('test'), но ничего не вижу.
- Я вижу это сообщение, но только когда обновляю эту страницу
Что я делаю не так? Я пытался отправить последнее сообщение (после входа в firebase) со всеми этими примерами:
background.js
chrome.runtime.sendMessage('test');
или
chrome.storage.sync.set({"type": test});
или
chrome.tabs.query({active: true, currentWindow: true}, function(tabs){
chrome.tabs.sendMessage(tabs[0].id, {action: "test"}, function(response) {});
});
content.js
chrome.storage.sync.get(['type'], function(msg) {
console.log('msg', msg);
});
chrome.runtime.onMessage.addListener(gotMessage);
function gotMessage(message, sender, sendResponse) {
console.log(JSON.stringify(message));
}
и сообщение 'test' никогда не отображается в console.log асинхронно, а только после обновления страницы