web3 - солидность - неверное количество аргументов ошибка

У меня есть сценарий солидности:

pragma solidity ^0.4.18;

contract EthProj {

    string fName;
    string age;

    event Message(string name, string age);

    function setMessage(string _fName, string _age) public {
        fName = _fName;
        age = _age;

        emit Message(_fName, _age);
    }

    function getName() public constant returns (string) {
        return (fName);
    }

    function getMessage() public constant returns (string) {
        return (age);
    }
}

Это мой ABI https://pastebin.com/QLBntb59Я устанавливаю свой контракт в моем сценарии JS:

var Web3 = require('web3'); 
    var web3 = new Web3();
    web3.setProvider(new web3.providers.HttpProvider('http://localhost:8545'));
    var address = new String();

    var EthProjContract = web3.eth.contract(my abi);
    var EthProj = EthProjContract.at('0x1D056b1e9764D3C79ca55B68049FC906373044d8');

Я использую свою функцию следующим образом:EthProj.setMessage($("#mes").val(), $("#name").val());Я вызываю эту функцию, используя два аргумента, а функция принимает два аргумента. Я попытался повторно загрузить свой контракт, чтобы убедиться, что он самый последний, и это определенно так. Мой ABI определенно тоже актуален. Как может быть эта ошибка, было столько же аргументов.

1 ответ

Решение

Ну, решение было на самом деле довольно простым. У меня просто был неправильный тег внутри $("#mes").val() так что возвращалось неопределенное.

Другие вопросы по тегам