Web3js

等到挖礦完成

  • February 25, 2022

我正在嘗試在沒有隨機超時的情況下完成探勘後進行交易。我檢查了類似的問題,但它們還不夠確鑿。

挖礦完成後如何獲得交易收據?

Github上的完整程式碼。

try {
    ethereum
    .request({
     method: "eth_sendTransaction",
              params: [tx],
             })
            .then( 
             async (result) => 
             {
             let nftTxn = await nftContract.safeMint;
             console.log("Minting... please wait");
             const transactionReceipt = await web3.eth.getTransactionReceipt(result);
             await transactionReceipt.wait; //cannot await because of null
             if (transactionReceipt!=null) {
               console.log(`Mined... ${transactionReceipt}`);
             } else { console.log(`error`) }; //getting this
})

我認為您的問題在這裡得到了部分回答:如何等待 web3.js 確認交易? 這顯示瞭如何通過定期檢查的輸出來等待 TX 被探勘,getTransactionReceipt(...)直到它返回一個不是的值null

另外,我認為以下行可能存在問題:

let nftTxn = await nftContract.safeMint;

我認為該方法safeMint沒有被呼叫,也沒有進行任何交易。

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