En Browser Solidity , hay una pestaña de "Transacción" (icono de avión de papel). Puede elegir una de dos direcciones y un valor. Pero no hay botón de "enviar" ni nada por el estilo. ¿Qué se supone que debe hacer esta sección?
Al poner un valor distinto de cero en el campo "valor", le indica al IDE que envíe esa cantidad de Ether (simulado) junto con cualquier transacción que realice.
El equivalente del botón "enviar" que está buscando es simplemente poner un valor en el campo "valor" y luego presionar el (fallback)
botón. Esto se comportará como si simplemente enviara una transacción al contrato con algo de Ether y sin datos.
crear un contrato simple
contract testMSGVALUEinBrowser{
uint lastSent;
function test() public returns (uint lastSent) {
lastSent = msg.value;
return lastSent;
}
function get() constant returns( uint){
return lastSent;
}
}
Haga clic en la pestaña de transacción
Haga clic en el botón rojo crear
Ingrese un número en el campo Valor de la transacción (1234 en el ejemplo)
Haga clic en el botón de prueba que activará la función de prueba, puede ver que ha enviado 1234 Ether
Haga clic en el botón obtener azul, recupera el valor enviado correctamente
Quiero hacer una pequeña corrección a la respuesta que comienza con "crear un contrato simple". Como se muestra, no funciona en 2016-08-17.
Lo siguiente funciona en esta fecha (browser-solidity/#version=0.3.6):
contract lastSentValue{
uint lastSent;
function set() public returns (uint) {
lastSent = msg.value;
return lastSent;
}
function get() public constant returns( uint){
return lastSent;
}
}
tjaden hess
mowliv