Quiero llamar a una función del contrato, algo como esto:
module.exports.transfer = function(to,value,){
return token.methods.transfer.getData(to, value);
}
Pero estoy enfrentando el error.
token.methods.transfer.getData no es una función
¿Cómo lo resuelvo, getData() está en desuso o hay alguna otra forma de obtener los datos de la función con los argumentos deseados?
versión web3 - 1.0 beta
Gracias
Para web3 1.0 beta, debe usar encodeABI
, de la documentación:
myContract.methods.myMethod(123).encodeABI();
para web3 1.2.1 (nueva versión) debe usarlo como:
contract_interfact.methods.methodName().call({from:"address"},(err,res) => {
...
})
contract_interfact.methods.methodName(arguments).send({from:"address"},(err,res) => {
...
})