En remix ide, tenemos una interfaz de usuario diseñada de tal manera que podemos pasar ether o Wei directamente y ejecutar las funciones. Cuando usamos la trufa para implementar el contrato, ¿cómo podemos pasar el éter?
Para crear y enviar algo de ether a un contrato, debe llamar a la función .send en el contrato.
El siguiente comando creará una nueva instancia de MyContract, luego llamará a su .send
función con la cantidad de éter a enviar y la dirección desde la cual enviarlo:
MyContract.new().then(c => c.send(10, {from: web3.eth.accounts[0]}))
Cuando comience el ganache, creará 10 direcciones diferentes para usted, cada una de las cuales contiene 100 ether. Puede acceder a ellos a través de web3.eth.accounts[
0..9 ]
y puede obtener sus saldos como:
web3.eth.getBalance(web3.eth.accounts[0]).div(10**18).toFixed(6)
Para enviar éter al contrato en el despliegue usando ganache y trufa
Truffle expone dos variables adicionales 'red' y 'cuentas'. La red le permite realizar acciones específicas dependiendo de la red/cadena en la que se implemente (por ejemplo, haga esto si se implementa en ropsten). Cuentas es una lista de cuentas que le proporcionó su cliente de Ethereum y su proveedor de web3.
Consulte los documentos para obtener más información: https://trufflesuite.com/docs/truffle/getting-started/running-migrations/#disponible-accounts
const MetaCoin = artifacts.require("MetaCoin");
module.exports = async function(deployer,network, accounts) {
await deployer.deploy(MetaCoin, { from: accounts[0], value:
"2000000000000000000" });
}
supakaidad