Estoy intentando usar web3.js en el archivo background.js de una extensión de Chrome (manifest v3) así:
// background.js const Web3 = require('web3') const web3 = new Web3("https://api.avax.network/ext/bc/C/rpc") var abi = [ { "constant": true, "inputs": [], "name": "owner", "outputs": [ { "name": "", "type": "address" } ], "payable": false, "type": "function" }, { "inputs": [], "payable": false, "type": "constructor" } ]; var MyContract = web3.eth.contract(abi);
Pero al instante recibo el error de que "la ventana no está definida". Entiendo que los scripts de fondo de Chrome no tienen acceso a la ventana, pero no entiendo por qué intentar crear una instancia de web3 requiere acceso a la ventana.
Captura de pantalla del error de extensión.
Estoy usando webpack para agrupar web3.js con background.js.
Mi objetivo es hacer llamadas de lectura a un contrato desde background.js, y pensé que web3.js era el método más fácil.