Javascript 未为以太坊智能合约生成事件日志

Javascript 未为以太坊智能合约生成事件日志,javascript,ethereum,remix,Javascript,Ethereum,Remix,我用remix IDE和metamask为以太坊ropsten网络创建了以太坊智能合约。创建智能合约并进行交易。但这些事件不会记录任何事件 生成智能合约的代码如下所示 pragma solidity ^0.5.1; contract SimpleStorage{ uint storeddata; function set(uint x) public{ storeddata = x; } function get() public view returns(uint){ return stor

我用remix IDE和metamask为以太坊ropsten网络创建了以太坊智能合约。创建智能合约并进行交易。但这些事件不会记录任何事件

生成智能合约的代码如下所示

pragma solidity ^0.5.1;
contract SimpleStorage{
uint storeddata;
function set(uint x) public{
storeddata = x;

}
function get() public view returns(uint){
return storeddata;

}
}
获取的智能合约地址为

0xA41B2508Ee53cE00E07405Bc15A190F8af5dE0a4

未记录事件的原因可能是什么。

这是因为在运行上述代码时没有注册事件。您可以按如下所示重新编写代码

pragma solidity ^0.5.1;
contract SimpleStorage{
uint storeddata;

event Store(uint _value);

function set(uint x) public{

emit Store(x);

storeddata = x;
}
function get() public view returns(uint){


return storeddata;

}
}

第四行和第六行应该可以解决您的问题

这是因为在运行上述代码时没有注册任何事件。您可以按如下所示重新编写代码

pragma solidity ^0.5.1;
contract SimpleStorage{
uint storeddata;

event Store(uint _value);

function set(uint x) public{

emit Store(x);

storeddata = x;
}
function get() public view returns(uint){


return storeddata;

}
}

第四行和第六行应该可以解决您的问题

您没有在set函数中发出的初始化事件您没有在set函数中发出的初始化事件