EDITAR La asignación está establecida, el problema es que la metamáscara no detecta el nombre del token ni la cantidad permitida.
En mi HTML/JS
amount = parseInt(web3.toWei(amount, "ether" ));
tokeninstance.approve(mainadd,amount,function(error, transactionHash){
if (!error){
$("#allowanceresult").html("TX hash: "+transactionHash+"<br>")
toastr.success("Approval successfull!")
}else{
$("#allowanceresult").html("Error: "+error+"<br>")
toastr.error("Approval failed!");
}
En la interfaz de solidez
function approve(address guy, uint wad) public returns (bool);
Hacer que la función de aprobación en remix funcione manualmente, estoy en ropsten, pero usando metamask + la función HTML/JS dapp allí arriba, obteniendo la entrada del usuario (mostrar correctamente en wei) e ingresando la dirección predefinida (formato correcto), metamask muéstrame esto , todavía en ropsten:
¿Me estoy perdiendo de algo? Siempre es así. Hice mis funciones send() web3.js, uso el mismo archivo web3.js que siempre uso.
Al verificar en ropsten ambos eventos uno al lado del otro (desde remix y metamask), claramente se ingresan los mismos datos, la misma dirección y la misma cantidad de wei. :(
Al llamar a una función de contrato inteligente desde javascript, envíe el uint
argumento como BigNumber . ¿Supongo que puedes intentarlo?
amount = new BigNumber(web3.toWei(amount, "ether" ));
Sibiraj PR