Я учусь писать расширения Chrome, и у меня возникают проблемы с API обмена сообщениями.Я нашел сообщение , связанное с *1001* *, но я не могу получать или получать уведомления от сообщений, отправленных с помощью BackgroundScript.
Вот мой код:
manifest.json
{
"manifest_version": 2,
"name": "z-context++",
"version": "2.0.1",
"devtools_page": "devtools/index.html",
"icons": {
"16": "icons/icon_16.png",
"48": "icons/icon_48.png",
"72": "icons/icon_72.png",
"96": "icons/icon_96.png",
"128": "icons/icon_128.png",
"144": "icons/icon_144.png",
"192": "icons/icon_192.png"
},
"background": {
"scripts": ["devtools/eventPage.js"],
"persistent": false
},
"content_scripts": [
{
"matches": [
"http://*/*",
"https://*/*"
],
"js": ["devtools/contentScript.js"],
"run_at": "document_end"
}
],
"permissions": [
"tabs",
"activeTab",
"http://*/*",
"https://*/*",
"*://*/*"
]
}
eventPage.js
var eventPage = new (function() {
function init() {
var page = chrome.extension.getBackgroundPage();
// chrome.extension.onMessage.addListener(function(request, sender, sendResponse) {
// if (request.asking === "login"){
// console.log('got msg from popup.js');
// return;
// }
// });
page.console.log("HELLO!");
chrome.tabs.query({active: true, currentWindow: true}, function(tabs){
chrome.tabs.sendMessage(tabs[0].id, {greeting: "hello"}, function(response) {});
});
};
init();
})();
contentScript.js
new (function() {
function init() {
document.addEventListener("DOMContentLoaded", function(event) {
console.log({'z_context': z_context()})
});
chrome.runtime.onMessage.addListener(function(message, sender, sendResponse) {
alert("*** MESSAGE RECEIVED ***")
console.log({'ON_MESSAGE': message});
});
}
init();
})();
Может ли кто-нибудь еще помочь мне увидеть, что мне не хватает?Я хочу , чтобы иметь возможность запускать сценарии в eventPage.js на основе событий содержимого, таких как document.ready и обновление страницы.Есть функция, которая анализирует DOM для контекста z-контекста / стека, и я хочу отправить данные этого свойства в скрипт контента, чтобы я мог выделить вещи на странице.
ПРИМЕЧАНИЕ. Я разрываю проект githubдля z-контекста, поэтому я не включил функцию zContext (), потому что это не мой код и потому что я не думаю, что это связано с моей неправильной отправкой сообщений между скриптами.
Любая помощь будетБуду очень признателен!