該專案演示了一個高級 Hardhat 用例,整合了生態系統中與 Hardhat 一起常用的其他工具。
該專案附帶一個範例合約、該合約的測試、部署該合約的範例腳本以及任務實現的範例(僅列出可用帳戶)。它還附帶了各種其他工具,經過預先配置以與專案代碼一起使用。
嘗試執行以下一些任務:
npx hardhat accounts
npx hardhat compile
npx hardhat clean
npx hardhat test
npx hardhat node
npx hardhat help
REPORT_GAS=true npx hardhat test
npx hardhat coverage
npx hardhat run scripts/deploy.ts
TS_NODE_FILES=true npx ts-node scripts/deploy.ts
npx eslint ' **/*.{js,ts} '
npx eslint ' **/*.{js,ts} ' --fix
npx prettier ' **/*.{json,sol,md} ' --check
npx prettier ' **/*.{json,sol,md} ' --write
npx solhint ' contracts/**/*.sol '
npx solhint ' contracts/**/*.sol ' --fix
要嘗試 Etherscan 驗證,您首先需要將合約部署到 Etherscan 支援的以太坊網絡,例如 Ropsten。
在此專案中,將 .env.example 檔案複製到名為 .env 的檔案中,然後對其進行編輯以填寫詳細資料。輸入您的 Etherscan API 金鑰、您的 Ropsten 節點 URL(例如來自 Alchemy)以及將發送部署交易的帳戶的私鑰。準備好有效的 .env 檔案後,首先部署您的合約:
hardhat run --network ropsten scripts/sample-script.ts
然後,複製部署位址並將其貼上到此命令中替換DEPLOYED_CONTRACT_ADDRESS
:
npx hardhat verify --network ropsten DEPLOYED_CONTRACT_ADDRESS " Hello, Hardhat! "
為了更快地執行測試和腳本,請考慮透過在安全帽環境中將環境變數TS_NODE_TRANSPILE_ONLY
設為1
來跳過 ts-node 的類型檢查。有關更多詳細信息,請參閱文件。