问题
app.js 是我写合约交易操作的文件,MyContract.sol中写有智能合约内容;
使用node app
命令进行合约交易操作的时候出现Error: Transaction has been reverted by the EVM错误;上etherscan查看交易情况也提示我的交易失败
出错原因
创建交易对象时,把data的值写错了。
解决步骤
truffle compile
;//编译合约,打开build/contract/你自己合约的名字.json文件,我的是MyContract.json- 找到“
bytecode
”属性,复制它的属性值; - 返回合约中,找到交易对象中的
data
属性,将“ bytecode”的属性值赋给它;
涉及交易对象的部份代码:
const txObject = {
nonce: web3.utils.toHex(txCount),
// 此处提高了gas上限ÿ