Solidity-Ereignis-Listener

Dieser web3js-Ereignis-Listener ist Teil einer Abstimmungs-Dapp. Der Listener wartet auf Transaktionen und rendert die Seite erneut, um Aktualisierungen anzuzeigen.

listenForEvents: function() {
App.contracts.Election.deployed().then(function(instance) {

  instance.votedEvent({}, {
    fromBlock: 0,
    toBlock: 'latest'

  }).watch(function(error, event) {
    console.log("event triggered", event)
    // Reload when a new vote is recorded
    App.render();
  });
});
},

Auch nach langem Suchen kann ich keine Erklärung für das Teil finden

{
    fromBlock: 0,
    toBlock: 'latest'
}

Ich denke, dieser Teil verursacht, dass die App in einer Schleife gerendert wird. Event-Deklaration ist wie

event votedEvent (uint indexed _candidateId); 

Die Anweisung, die das Ereignis aufruft, ist

votedEvent(_candidateId);

Alle Links oder Themen, nach denen gesucht werden kann, sind hilfreich. Vielen Dank im Voraus :-)

Antworten (1)

Entfernen von App.render(); für mich gelöst. Weil wir die App rendern, während wir die Solidity-Klasse initialisieren .