Web3js
嘗試將 Web3 導入反應應用程序
如果我只執行 npm install web3 我會收到一堆錯誤
Module not found: Error: Can't resolve 'stream' Module not found: Error: Can't resolve 'crypto' Module not found: Error: Can't resolve 'assert' ....etc.
如果我執行 npm install 或 npm install dependencies 我會得到相同的結果。
我偶然發現了另一個問題,答案說將導入語句更改為
import Web3 from 'https://cdn.esm.sh/v58/web3@1.6.1/es2021/web3.js';
哪個在開發中有效….但是當我將它變成建構包來部署它時“目標環境不支持動態 import() 語法,因此無法在腳本中使用外部類型‘模組’”
如果我使用上面的 cdn 連結中的內容創建一個名為 web3 的本地文件,我會得到與第一種情況相同的“無法解決”錯誤。
npm install ethereum/web3.js
那應該安裝您缺少的依賴項並正確編譯
顯然,對於特定版本的 React,這可能是一個問題。目前使用最新版本 17.0.2 我沒有任何問題。因此,如果其他人遇到這種情況,我會說嘗試不同版本的反應。