Exercício 5
Incorporaremos em nosso contrato um evento que informará quando o valor da variável storedInfo
for alterado, indicando qual era o valor original e qual é o novo valor.
Passos a seguir:
Programe o contrato no Remix.
Deploye em uma rede de teste do Ethereum, como Sepolia.
Publique e verifique o contrato utilizando um explorador de blocos.
Interaja com o contrato através do explorador de blocos, modificando o valor de
storedInfo
.Verifique nas transações do contrato no explorador de blocos que a função
setInfo
foi executada e na aba de eventos, verifique se um evento foi gerado.
// SPDX-License-Identifier: MIT
pragma solidity 0.8.19;
/// @title Conceitos: evento
/// @author Solange Gueiros
contract EventEmitter {
string private storedInfo;
// Define um evento para informar uma mudança em storedInfo
event InfoChange(string oldInfo, string newInfo);
// Emite o evento quando o valor de storedInfo vai ser alterado
function setInfo(string memory myInfo) external {
emit InfoChange(storedInfo, myInfo);
storedInfo = myInfo;
}
function getInfo() external view returns (string memory) {
return storedInfo;
}
}
Last updated