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