Solidity

eth未定義反應中的錯誤

  • June 29, 2021

在反應應用程序中遇到 eth not defined 錯誤,有人可以幫我解決這個問題嗎?這個應用程序是關於 DApp 的。

eth未定義錯誤

在 React 中,如果您使用的是功能組件,我建議您在組件中使用 web3 庫添加一個變數:

const ethRef = useRef<Web3>(null);

在僅在安裝組件時執行的 useEffect 中,使用以下內容更新了 ethRef 引用:

useEffect(() => {
if (!window.ethereum) {
 return;
}
ethRef.current = new Web3(window.ethereum);}, []);

從那裡,您可以在組件中的任何位置使用 web3 提供程序及其輔助函式和類,如下所示:

const contractInstance = new ethRef.current.eth.Contract(contractABI,contractAddress);

希望這可以幫助。

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