So lösen Sie die VM-Ausnahme während der Verarbeitung der Transaktion: kein Gas mehr

Ich versuche, diese Funktion mit Hilfe von web3.js in Ganache testrpc aufzurufen, aber es gibt mir den Fehler VM Exception während der Verarbeitung der Transaktion: kein Gas mehr

Ich habe versucht, das Gas der Ganache auf 999999999999 zu erhöhen, es funktioniert immer noch nicht ...

Funktion initialEscrowDetail(uint Transaktions-ID, Adresse ParteiB, uint Betrag, boolsche Bedingung) {

    escrowDetail[transactionId].originator=msg.sender;
    escrowDetail[transactionId].beneficiary=partyB;
    escrowDetail[transactionId].amount=amount;
    escrowDetail[transactionId].payoutCondition=condition;
    escrowDetail[transactionId].escrowCompleted=false;
}

Geben Sie hier die Bildbeschreibung ein

Bitte teilen Sie den Code
danke aber problem ist gelöst. Ganache testRPC ist Zeitverschwendung beim Testen von Dapps im wirklichen Leben. Jetzt habe ich eine private Test-Blockchain gestartet.
testrpc ist auch private EVM :)

Antworten (1)

Das Standardgas in web3, wenn es nicht angegeben ist, ist 90k. Da jede neue Speichermodifikation 20.000 kostet, haben Sie bei 5 Speichermodifikationen mehr als 100.000 Gas verbraucht.

Sie können einen optionalen letzten Parameter mit der Transaktion Gas hinzufügen

escrow.initialEscrowDetail(1,"0x0",200,true, { gas: 1000000 });