Closed lurengeng closed 1 year ago
环境: Win10 npm 9.5.0 ethers 6.0.5
代码: const { ethers } = require("ethers"); //如果用import的话,需要改package.json,但本错误仍然不可避免 // const provider = ethers.getDefaultProvider(); const provider = new ethers.JsonRpcProvider("https://1rpc.io/eth"); const main = async () => { const balance = await provider.getBalance(vitalik.eth); console.log(ETH Balance of vitalik: ${ethers.utils.formatEther(balance)} ETH); // console.log(ETH Balance of vitalik: ${balance} ETH); // 这一行可以正常运行 } main()
vitalik.eth
ETH Balance of vitalik: ${ethers.utils.formatEther(balance)} ETH
ETH Balance of vitalik: ${balance} ETH
报错: TypeError: Cannot read properties of undefined (reading 'formatEther') at main (file:///D:/Etherjs/Lesson/L1.js:7:57) at processTicksAndRejections (node:internal/process/task_queues:96:5)
请教
找到问题了。 是ethers.js的版本问题。 在安装的时候 使用npm install --save ethers@5.4 后面的代码就能对的上了。
建议0xAA老师能在教程里简单说明一下所用的版本……有时候版本问题挺容易造成分歧的。 另外,想使用import就要改 package.json,(增加“type”:"module";), 只有我是这样吗?
环境: Win10 npm 9.5.0 ethers 6.0.5
代码: const { ethers } = require("ethers"); //如果用import的话,需要改package.json,但本错误仍然不可避免 // const provider = ethers.getDefaultProvider();
const provider = new ethers.JsonRpcProvider("https://1rpc.io/eth"); const main = async () => { const balance = await provider.getBalance(
vitalik.eth
); console.log(ETH Balance of vitalik: ${ethers.utils.formatEther(balance)} ETH
); // console.log(ETH Balance of vitalik: ${balance} ETH
); // 这一行可以正常运行 } main()报错: TypeError: Cannot read properties of undefined (reading 'formatEther') at main (file:///D:/Etherjs/Lesson/L1.js:7:57) at processTicksAndRejections (node:internal/process/task_queues:96:5)
请教