Estoy haciendo un autocompletar extensión de chrome. Es decir, una vez que pulsando un botón, un formulario de entrada en el contenido de la página web se rellenará con el texto de la popup.html. Yo estoy haciendo esto "no se puede leer las propiedades de null" error de partida desde donde yo añade un detector de eventos para el botón. [Uncaught TypeError: No se puede leer las propiedades de null (leyendo 'addEventListener')][1]
Aquí está mi archivo html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Autofill</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<p id="testText">Text to put</p>
<button id="fillForm">Fill!</button>
<script src="app.js" ></script>
</body>
</html>
Aquí está mi app.js
console.log('background running!!!')
let testtext = document.getElementById('testText')
let button = document.getElementById('fillForm')
button.addEventListener('click', buttonClick);
function buttonClick(){
params = {
active: true,
currentWindow: true
}
chrome.tabs.query(params, gotTabs);
function gotTabs(tabs){
let text = testtext.innerHTML
let content = {
username: text
}
chrome.tabs.sendMessage(tabs[0].id, content);
}
}
Aquí está mi content.js
console.log("Receiving message...")
chrome.runtime.onMessage.addListener(gotMessage);
function gotMessage(message, sender, sendReponse){
document.getElementById('email').value = content.username
}
Por último, mi manifiesto.json
{
"name": "Resume Autofiller",
"description": "Build an Extension!",
"version": "1.0",
"manifest_version": 2,
"browser_action":{
"default_popup": "index.html"
},
"permissions": [
"activeTab",
"<all_urls>"
],
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": [ "content.js" ]
}
],
"background": {
"scripts": ["app.js"]
}
}
He leído en línea que debo poner mi etiqueta de secuencia de comandos en la parte inferior de la etiqueta body, pero me sigue apareciendo este error. Me siento como que estoy supervisando algo obvio, por lo que cualquier ayuda es muy apreciada. Gracias!! Adjunto es el error que estoy consiguiendo. [1]: https://i.stack.imgur.com/GyNXO.png