Web3js
等到挖礦完成
我正在嘗試在沒有隨機超時的情況下完成探勘後進行交易。我檢查了類似的問題,但它們還不夠確鑿。
挖礦完成後如何獲得交易收據?
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
沒有被呼叫,也沒有進行任何交易。