Truffle invalid address 问题

当使用web3.js在React-Truffle环境中调用智能合约函数遇到'Error: invalid address'的问题,通常是因为未设置默认账户。解决方案是在执行任何web3操作前设置web3.eth.defaultAccount为web3.eth.accounts[0]。例如,在React中可以使用`this.state.web3.eth.defaultAccount = this.state.web3.eth.accounts[0];`来确保正确设置默认账户。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当app.js调用contract 的函数时,如果出现如下错误:

Error: invalid address
at v (web3.min.js:2)
at l (web3.min.js:2)
at web3.min.js:2
at Array.map ()
at i.formatInput (web3.min.js:2)
at i.toPayload (web3.min.js:2)
at r.e [as sendTransaction] (web3.min.js:2)
at c.sendTransaction (web3.min.js:2)
at c.execute (web3.min.js:2)
at truffle-contract.js:190
一般情况是缺少
web3.eth.defaultAccount = web3.eth.accounts[0];

在进行任何关于web3的操作之前需要设置 defaultAccount。
使用react-truffle,可以这样写:
this.state.web3.eth.defaultAccount = this.state.web3.eth.accounts[0];

–希望对大家有帮助。mark

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值