Estoy tratando de conectarme a Metamask usando ethers.js.
Sin embargo, todas las soluciones que encontré siguen devolviendo este error.
"esperar solo es válido en la función asíncrona"
¿Hubo un cambio reciente en la sintaxis de Javascript que afecta la espera?
¿Cómo conectar ethers.js con metamask?
const provider = new ethers.providers.Web3Provider(window.ethereum, "any"); // Prompt user for account connections await provider.send("eth_requestAccounts", []); const signer = provider.getSigner(); console.log("Account:", await signer.getAddress());¿Cómo conectar metamask con ethers.js y recuperar el saldo?
await window.ethereum.enable(); const provider = new ethers.providers.Web3Provider(window.ethereum); const contract = new ethers.Contract(smartContractAddress, abi, provider); balance = await contract.getBalance("0x7C76C63DB86bfB5437f7426F4C37b15098Bb81da");Debería poner await en async function para que funcione, así:
async function connectToMetamask(){ const provider = new ethers.providers.Web3Provider(window.ethereum, "any"); // Prompt user for account connections await provider.send("eth_requestAccounts", []); const signer = provider.getSigner(); console.log("Account:", await signer.getAddress()); }