坑1
meta.getBalance.call(address)方法不可用,无法得到余额
原因没找到,坑了我很久,我的truffle
版本为v5.0.4
,可能是版本的原因
解决办法
使用web3的方法替代,代码如下
async function myGetBalance(address){
let value = 0
await web3.eth.getBalance(address).then( v => {
value = v
})
return value
}
//调用
let balance = await myGetBalance(user_address)
坑2
报错Error: Number can only safely store up to 53 bits
解决办法
应该是以太坊大数(BN)的原因,将
userPaid = registrantsPaid.toNumber()
//修改为
userPaid = registrantsPaid
坑3
用meta.<variableName>.call(<address>)
调用solidity
的public
变量时,返回的是promise
对象