簡體   English   中英

如何在 web3 js 中監聽智能合約發出的事件?

[英]How can I listen the event emitted from smart contract in web3 js?

我現在正在建立 NFT 質押網站,但我遇到了一個問題。

我已經建立了智能合約並讓它發出事件。 但是在前端,我無法正確監聽發出的事件。 所以我用硬編碼強制收聽事件。 代碼如下。

var stakeTokenEvent = stakeToken.events.Staked();

let event = await stakeTokenEvent.on({}, function (error, result) {
  if (!error) {
    return result;
  } else {
    dispatch(spinner_show());
  }
});
new Promise(function (resolve, reject) {
  if (event) {
    resolve("success");
  } else {
    reject("error");
  }
}).then(
  (success) => {
    dispatch(ghsp_connect());
  },
  (error) => {}
);

是否有任何簡單的方法或正確的方法來監聽發出的事件?

來自 web3 文檔( myContract.events.NameOfYourEvent()

這是一個簡單的例子:

    myContract.events.MyEvent([filter options])
      .on("connected", function(subscriptionId){ console.log(subscriptionId);})
      .on('data', function(event){ console.log(event);})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM