Hola chicos, estoy terriblemente atascado con los eventos para la interfaz. Estoy usando MetaMask. ¿Qué me estoy perdiendo?
Evento de solidez:
event enrolled(address payoutAddress, address sender, uint dateOfTransaction);
Y Web3:
MyContract = web3.eth.contract(abi);
myContractInstance = MyContract.at(contractAddress);
var depositEventAll = myContractInstance.enrolled({dateOfTransaction: userAddr}, {fromBlock: 4400000, toBlock: 'latest'});
depositEventAll.watch(function (err, result) {
if (err) {
console.log(err);
return;
}
console.log(result);
});
¡Gracias!
Actualmente hay algunos problemas con la forma en que MetaMask maneja los eventos. Siempre ha sido una API difícil de admitir porque, a diferencia de cualquier otro método, tiene estado.
Lamento decir que hasta que se estabilice este comportamiento interno, debo recomendar inicializar un segundo proveedor si desea usar eventos, y apuntarlo a un backend que controle, o usar web3-provider-engine para polillenar el evento. comportamiento (metamask está en el proceso de mudarse del proveedor-motor, de ahí la inestabilidad actual).
usuario19510
{dateOfTransaction: userAddr}
parece sospechoso. ¿Estás seguro de que tu filtro es correcto? ¿Quiso decir{address: userAddr}
en su lugar?