Truffle
將合約 ABI 載入到反應應用程序時出錯
您好,我是 web3 開發的新手,我已經使用“truffle compile”在 ganache 上編譯了我的智能合約,並將生成的 JSON(DevToken.json)複製到 build 文件夾中,並將其粘貼到 react app /public 文件夾中
我創建了一個函式來載入 ABI
async function getABI(){ let ABI = ""; await fetch('./DevToken.json', { headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' } }).then((response) => { if (response.status == 200) { return response.json(); } else { throw new Error('Error fetching ABI'); } }).then((data) => { ABI = data; }).catch((error) => { throw new Error(error); }); return ABI; }
不幸的是我收到了這個錯誤
有沒有其他方法可以導出 ABI 並將其導入到 react 應用程序中?
你不應該複製整個 DevToke.json
而是僅複製生成文件的 ABI 部分。
例子:
{ "contractName":"DevToken", "abi":[...] # the ABI copied from build/DevToken.json file }