Übergabe des Parameters defaultBlock "pending" an einen Truffle-Contract-Aufruf

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

Antworten (1)

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.