Ich brauche den ausstehenden Saldo meines Vertrags. Soweit ich verstehe, könnte ich es mit web3 tun:
web3.eth.call(callObject [, defaultBlock] [, callback])
Kann ich defaultBlock auch an die Truffle-Contract-Abstraktion übergeben oder muss ich web3 direkt aufrufen?
Dh wenn ich versuche, einen defaultBlock an einen Truffle-Contract-Aufruf zu übergeben:
import { default as Contract } from "truffle-contract";
let contractDef = Contract(artifacts);
contractDef.setProvider(provider);
let instance = await contractDef.deployed();
let balance = await myContract.instance.balanceOf(
address,
"pending"
);
Ich bekomme:
Error: Invalid number of arguments to Solidity function
Es gab vorher Probleme damit, bitte führen Sie ein Downgrade auf Truffle 3.x durch, löschen Sie den Ordner build/contracts/ (sichern Sie ihn für alle Fälle), erstellen Sie die Artefakte mit trufflemigrate --compile-all neu und versuchen Sie es erneut.