Implementación del contrato de solidez
Implementación del contrato de solidez
cliinicia.js
export FILE_NAME=my-first-solidity
export FILE_PATH=./$FILE_NAME.sol
export KEY_NAME=my-first-key
export CHAIN_ID=my-first-chain-1
export GAS_PRICES=0.15unova
# compile solidity
mkdir build
solc $FILE_PATH --bin --abi -o build
# CREATE opcode
export TX_HASH=$( \
minitiad tx evm create \
./build/$FILE_NAME.bin \
--from $KEY_NAME \
--chain-id $CHAIN_ID \
--gas-prices $GAS_PRICES \
| grep txhash \
| sed 's/.*: //' \
)
# CREATE2 opcode
export TX_HASH=$( \
minitiad tx evm create2 \
1:./build/$FILE_NAME.bin \
--from $KEY_NAME \
--chain-id $CHAIN_ID \
--gas-prices $GAS_PRICES \
| grep txhash \
| sed 's/.*: //' \
)
# find contract address from the tx
minitiad q tx $TX_HASH | grep contract -A 1
Interactuar con el contrato EVM
cliinicia.js
export CONTRACT_ADDR=0x1
export KEY_NAME=my-first-key
# querying code bytes
minitiad q evm code $CONTRACT_ADDR
# querying state
minitiad q evm state $CONTRACT_ADDR 0x00
# querying erc20 contract address of a denom
minitiad q evm contract-addr-by-denom unova
# querying denom of erc20 contract
minitiad q evm denom $CONTRACT_ADDR
# executing call with no state transition
minitiad q evm call $(minitiad keys show $KEY_NAME -a) \
$CONTRACT_ADDR \
[0x-hex-input-string] \
--trace \
--with-memory \
--with-stack \
--with-return-data \
--with-storage
# executing call with state transition
minitiad tx evm call \
$CONTRACT_ADDR \
[0x-hex-input-string] \
--from $KEY_NAME \
--chain-id $CHAIN_ID \
--gas-prices $GAS_PRICES
Conclusión
Ahora que tiene la información necesaria sobre cómo implementar sus contratos e interactuar con ellos en la plataforma Initia, está bien equipado para comenzar a implementar sus proyectos. Para obtener más orientación e información práctica, consulte las próximas secciones que brindan ejemplos de contratos EVM. Estos ejemplos ofrecerán un contexto valioso y demostrarán cómo aprovechar eficazmente las capacidades únicas del módulo EVM dentro del ecosistema Cosmos. Ya sea que esté realizando la transición de aplicaciones Ethereum existentes o desarrollando otras nuevas, estos recursos lo ayudarán a optimizar su implementación y estrategias operativas.
Last updated