Estoy tratando de enviar la URL activa actual desde cualquier pestaña actualizada a su script de contenido respectivo con el código a continuación. Tengo problemas para confirmar la recepción de cualquier mensaje en la consola de página/script de contenido. Sin embargo, los console.log en background.js están apareciendo.
También me di cuenta de que a veces changeInfo.url se envía como undefined ? Si if (changeInfo.url) { condicional de background.js , la secuencia de comandos en segundo plano se desconectará 2 o 3 veces por carga de página, y las últimas instancias registrarán changeInfo.url como undefined .
Soy nuevo en el desarrollo de extensiones de Chrome, ¿qué me estoy perdiendo? ¡Gracias!
fondo.js:
chrome.tabs.onUpdated.addListener( function(tabId, changeInfo, tab) { if (changeInfo.url) { console.log(tabId, changeInfo.url, tab); chrome.tabs.sendMessage( tabId, { message: 'hello!', url: changeInfo.url }) } });contenido.js:
chrome.runtime.onMessage.addListener( function (request, sender, sendResponse) { console.log("this is the url:" + request.url) } )