У меня есть простой интеллектуальный контракт на солидность с методом, подобным:
function foo(uint a) public {
b = bytes32(1);
emit Event(a, b);
emit Event2(a, b);
}
(полный код здесь: https://remix.ethereum.org/#optimize=false&version=soljson-v0.4.25+commit.59dbf8f1.js)
и вызовите его, используя код web3.js:
contract = testContract.at('xxxAddress')
// contract.foo(6); // Failed, Why?
//Success
contract.foo.sendTransaction(6, {from: eth.accounts[1]},function(error, result) {
console.log("Got err:", error, ", result: ", result)
}
);
но почему не удалось выполнить простой contract.foo (6)? Может ли какой-нибудь эксперт это объяснить?