Copyright © 2022-2025 aizws.net · 网站版本: v1.2.6·内部版本: v1.25.2·
页面加载耗时 0.00 毫秒·物理内存 159.7MB ·虚拟内存 1438.3MB
欢迎来到 AI 中文社区(简称 AI 中文社),这里是学习交流 AI 人工智能技术的中文社区。 为了更好的体验,本站推荐使用 Chrome 浏览器。
合约可以触发事件,你可以捕捉这些事件,以便对合约的行为有更深入的了解。处理事件的最简单方法是,如果某个交易触发了事件,可以从相应交易的执行结果 result对象中,解析交易日志中的 logs数组。
如果输出第一个日志条目,可以看到调用 sendCoin函数触发的事件( Transfer(msg.sender, receiver, amount);)。
truffle(develop)> result.logs[0]
{ logIndex: 0,
transactionIndex: 0,
transactionHash: '0x3b33960e99416f687b983d4a6bb628d38bf7855c6249e71d0d16c7930a588cb2'
,
blockHash: '0xe36787063e114a763469e7dabc7aa57545e67eb2c395a1e6784988ac065fdd59'
,
blockNumber: 8,
address: '0x6891Ac4E2EF3dA9bc88C96fEDbC9eA4d6D88F768'
,
type: 'mined'
,
id: 'log_3181e274'
,
event: 'Transfer'
,
args:
Result {
'0'
: '0x8128880DC48cde7e471EF6b99d3877357bb93f01'
,
'1'
: '0x12B6971f6eb35dD138a03Bd6cBdf9Fc9b9a87d7e'
,
'2'
: <BN: a>,
__length__: 3,
_from: '0x8128880DC48cde7e471EF6b99d3877357bb93f01',
_to: '0x12B6971f6eb35dD138a03Bd6cBdf9Fc9b9a87d7e',
_value: <BN: a> } }
前面章节中,我们使用的是已经部署合约的合约抽象。我们可以使用 .new()函数将我们自己的版本部署到网络: truffle(develop)> let newInstance = aw ...