Web3js

從 Web3js getPastEvents 獲取特定值

  • August 19, 2021

我想知道如何從這個 web3.eth.Contract 的 returnValues: Result {} 中提取帳戶值

這段程式碼可以很好地記錄到控制台,但我已經搜尋了有關對象和 web3js 的文件,以找到轉換此對象的方法,但無濟於事。我也嘗試過按https://web3js.readthedocs.io/en/v1.2.11/web3-eth-contract.html#id48過濾和主題,但沒有運氣……

在此處輸入圖像描述

for (const element2 of lendingPairList) {
                 const eventPair = new web3.eth.Contract(PairContractABI, element2)
                       eventPair.getPastEvents("Deposit", {                          
                         fromBlock: 12867493,
                         toBlock: 'latest'
                     })
                     .then(events => console.log(events))
             .catch((err) => console.error(err));
                   }
                 }}      
               )}
             }
           )
         })
       }}

首先events應該是過去事件對象的數組。因此,如果您想訪問該account值,您應該這樣做:

.then(function(events) {
   if (events.length) {
       for (var i = 0, len = events.length; i < len; i+=1) {
           console.log(events[i].returnValues.account);
       }
   }
});

引用自:https://ethereum.stackexchange.com/questions/107400