在truffle官網下載一個 react-box案例,編譯成功,部署也成功,但執行npm run start時,瀏覽器報"This contract object doesn’t have address set yet"問題,如下所示:
出現該問題的原因是,App.js沒有設定SimpleStorage.sol合約地址。
解決方法如下:
將SimpleStorage.sol原始碼拷貝到Remix官網IDE裡,進行編譯和部署到Ropston測試網,得到合約地址,然後將合約地址拷貝到App.js的new web3.eth.Contract()第二個引數即可。
拷貝react-box\contracts\SimpleStorage.sol原始碼拷貝到Remi官網,,編譯和部署到Ropston,得到合約地址,如圖(1)所示:
將合約地址填到react-box\client\src\App.js裡的new web3.eth.Contract()第二個引數即可,如圖(2)所示: