-
bitcoin $76464.156879 USD
0.86% -
ethereum $2445.495804 USD
1.91% -
tether $0.999058 USD
-0.01% -
bnb $725.991560 USD
1.93% -
xrp $1.303704 USD
0.85% -
usd-coin $0.999942 USD
0.00% -
solana $100.064497 USD
3.06% -
tron $0.335357 USD
0.24% -
zcash $1358.632097 USD
14.53% -
hyperliquid $79.355311 USD
2.37% -
dogecoin $0.081165 USD
1.50% -
monero $495.294239 USD
-2.55% -
chainlink $11.205049 USD
3.83% -
unus-sed-leo $8.932502 USD
0.55% -
cardano $0.198341 USD
1.78%
如何部署NFT智能合約? (安全帽和混音教學)
Set up Hardhat, write an ERC-721 NFT contract with OpenZeppelin, test locally, then deploy to Sepolia via script or Remix—ensuring proper URI handling and ownership control.
2026/02/23 12:20
設定開發環境
1. 安裝 Node.js 和 npm 以確保與 Hardhat 工具鍊和依賴管理的兼容性。
2. 在空專案目錄中執行npm install --save-dev Hardhat以初始化 Hardhat 工作區。
3. 執行npx Hardhat init並選擇範例專案選項以產生樣板文件,包括合約、腳本和測試資料夾。
4. 使用 Sepolia 或 Mumbai 等網路端點設定Hardhat.config.js以進行測試網路部署。
5. 透過npm install @openzeppelin/contracts安裝 OpenZeppelin 合約,以利用經過審計的 ERC-721 實施。
編寫 NFT 合約
1. 建立繼承ERC721和Ownable的contracts/MyNFT.sol ,用於所有權控制。
2.定義公共_baseTokenURI字串以支援透過IPFS或中心化伺服器動態元資料解析。
3. 實作一個鑄造函數,該函數檢查呼叫者授權並使用_safeMint分配連續的令牌 ID。
4. 新增僅限合約所有者使用的setBaseURI函數,以允許部署後 URI 更新。
5. 包含supportsInterface重寫,以完全符合ERC-721標準介面偵測要求。
本地編譯和測試
1. 使用npxhardhatcompile在artifacts/資料夾中產生ABI和字節碼工件。
2. 在test/MyNFT.test.js中編寫測試腳本,驗證鑄造邏輯、所有權轉移和 URI 一致性。
3. 使用npx Hardhat 節點啟動本地以太坊節點來模擬區塊鏈行為,無需外部依賴。
4. 使用npx hardhat test運行測試並確認所有斷言均通過,然後再繼續部署。
5. 透過檢查編譯輸出並與 EVM 版本限制進行比較,驗證合約字節碼是否與預期操作碼相符。
透過 Hardhat 腳本進行部署
1. 建立script/deploy.js ,匯入合約工件並初始化部署參數,例如名稱、符號和基本 URI。
2. 在部署腳本中使用await ethers.getContractFactory('MyNFT')實例化合約工廠。
3. 使用建構函式參數呼叫deploy() ,並等待所選網路上的交易確認。
4. 記錄部署的合約地址並驗證其在成功挖礦後出現在 Etherscan 上。
5. 將位址儲存在 JSON 檔案或環境變數中,以供後續互動腳本或前端整合使用。
透過 Remix IDE 進行部署
1. 導覽至remix.ethereum.org並建立一個名為MyNFT.sol的新 Solidity 檔案。
2. 貼上 Hardhat 中使用的相同合約程式碼,確保編譯器版本與Hardhat.config.js中指定的版本相符。
3. 選擇Injected Provider - MetaMask作為環境並連接到 Sepolia 或其他支援的測試網。
4. 在交易彈出視窗中確認建構函式參數和 Gas 估算後,按一下「部署」 。
5. 在 MetaMask 中確認收據,並使用交易哈希在相應的區塊瀏覽器上驗證合約創建。
常見問題解答
Q:我可以在不擁有 ETH 的情況下部署 ERC-721 合約嗎?答:不需要。每次部署都會消耗以 ETH 支付的 Gas。在像 Sepolia 這樣的網路上部署之前,必須從水龍頭取得測試網 ETH。
Q:為什麼我的鑄幣功能恢復為「ERC721:轉移到零地址」?答:當_safeMint收到零地址作為收件者時,就會發生這種情況。確保呼叫者傳遞有效的非零以太坊地址。
Q:鑄造後是否可以更改代幣 URI?答:是的,如果合約包含從可變基本 URI 讀取並附加令牌 ID 的tokenURI覆蓋。一旦發佈到 IPFS,元資料本身就保持不變。
Q:如果我在鑄造之前忘記調用_setBaseURI會發生什麼?答:令牌將使用預設的空字串解析 URI,從而導致元資料損壞或無法訪問,除非稍後透過僅限所有者的 setter 進行更新。
免責聲明:info@kdj.com
所提供的資訊並非交易建議。 kDJ.com對任何基於本文提供的資訊進行的投資不承擔任何責任。加密貨幣波動性較大,建議您充分研究後謹慎投資!
如果您認為本網站使用的內容侵犯了您的版權,請立即聯絡我們(info@kdj.com),我們將及時刪除。
- Vitalik Buterin 挑戰人工智慧網路安全末日敘事,倡導形式驗證
- 2026-09-18 00:55:01
- AML RightSource 榮獲著名的 Dobra-Sight 數位資產合規卓越獎
- 2026-09-18 00:40:01
- Solana 和 XRP 引領加密貨幣市場的潮流變化,順應更廣泛的代幣化趨勢
- 2026-09-17 20:40:01
- HBO Max Reddit 帳戶因竊取加密貨幣的惡意軟體攻擊而被劫持:新一波複雜的詐騙
- 2026-09-17 12:50:01
- 眾議院委員會推進戰略比特幣儲備法案,塑造聯邦加密控股的未來
- 2026-09-17 12:40:01
- 加密稅法案:數位資產面臨新的稅收規則,但清晰度仍然難以捉摸
- 2026-09-17 09:10:02
相關知識
什麼是 NFT 生態系代幣?為什麼NFT計畫要推出自己的代幣?
2026-08-25 21:59:57
定義和核心功能1. NFT 生態系統代幣是由在更廣泛的不可替代代幣空間內運行的平台、市場或協議發行的本機實用程式或治理代幣。 2. 這些代幣通常建構在標準化智慧合約框架上,例如以太坊上的 ERC-20 或 Solana 上的 SPL,從而實現與去中心化交易所和借貸協議等 DeFi 基礎設施的互通性。...
什麼是 NFT 實用程式?除了數位資產還能得到什麼?
2026-08-21 09:40:07
Bitcoin 減半機制1. Bitcoin 的協議強制執行固定的發行時間表,其中大約每 210,000 個區塊,區塊獎勵就會減少一半。 2. 該事件大約每四年發生一次,直接減少每個區塊新進入流通的 BTC 數量。 3.截至2020年減半,礦工每區塊獲得6.25 BTC;下一次減少將使其達到 3.1...
什麼是動態 NFT? NFT 的影像或元資料會隨著時間的推移而改變嗎?
2026-08-31 18:20:08
定義及核心機制1. 動態 NFT 是一種不可取代的代幣,其元資料在鑄造後可以透過程式設計可變。 2. 與引用 IPFS 或集中式伺服器上託管的不可變 JSON 檔案的靜態 NFT 不同,動態 NFT 指向由可更新智慧合約控制的 URI 端點。 3. 可以重寫ERC-721或ERC-1155合約中的t...
什麼是 NFT 掉落?如何在新的 NFT 系列售罄之前找到它們?
2026-08-23 02:40:00
Bitcoin 減半機制1. Bitcoin 的協議強制執行固定的發行時間表,其中大約每 210,000 個區塊,區塊獎勵就會減少一半。 2. 該事件大約每四年發生一次,直接減少了新進入流通的 BTC 數量。 3.截至2020年減半,礦工每區塊獲得6.25 BTC;下次減少將達到 3.125 BTC...
什麼是免費的 NFT 鑄幣廠?扣除 Gas 費後「免費」真的免費嗎?
2026-08-22 10:00:29
市場波動模式1. Bitcoin 在 ETF 批准公告或重大交易所中斷等高流動性事件期間,24 小時視窗內價格波動通常超過 5%。 2. 當第 2 層升級提案進入最終治理投票階段時,以太坊的波動性指數會飆升,特別是在多個競爭性匯總同時獲得開發人員支持的情況下。 3. 穩定幣脫鉤事件(例如 2023 ...
什麼是 NFT 鑄幣通證?為什麼有些項目在鑄造之前需要一個?
2026-08-29 09:00:30
Bitcoin 減半機制1. Bitcoin 的協議強制規定 2,100 萬枚代幣的固定供應上限,並透過區塊獎勵引入新單位。 2. 每 21 萬個區塊(大約每四年),區塊獎勵就會減少一半,這個過程稱為減半。 3. 最近一次減半發生在 2024 年 4 月,每個區塊的獎勵從 6.25 BTC 減少到3...
什麼是 NFT 生態系代幣?為什麼NFT計畫要推出自己的代幣?
2026-08-25 21:59:57
定義和核心功能1. NFT 生態系統代幣是由在更廣泛的不可替代代幣空間內運行的平台、市場或協議發行的本機實用程式或治理代幣。 2. 這些代幣通常建構在標準化智慧合約框架上,例如以太坊上的 ERC-20 或 Solana 上的 SPL,從而實現與去中心化交易所和借貸協議等 DeFi 基礎設施的互通性。...
什麼是 NFT 實用程式?除了數位資產還能得到什麼?
2026-08-21 09:40:07
Bitcoin 減半機制1. Bitcoin 的協議強制執行固定的發行時間表,其中大約每 210,000 個區塊,區塊獎勵就會減少一半。 2. 該事件大約每四年發生一次,直接減少每個區塊新進入流通的 BTC 數量。 3.截至2020年減半,礦工每區塊獲得6.25 BTC;下一次減少將使其達到 3.1...
什麼是動態 NFT? NFT 的影像或元資料會隨著時間的推移而改變嗎?
2026-08-31 18:20:08
定義及核心機制1. 動態 NFT 是一種不可取代的代幣,其元資料在鑄造後可以透過程式設計可變。 2. 與引用 IPFS 或集中式伺服器上託管的不可變 JSON 檔案的靜態 NFT 不同,動態 NFT 指向由可更新智慧合約控制的 URI 端點。 3. 可以重寫ERC-721或ERC-1155合約中的t...
什麼是 NFT 掉落?如何在新的 NFT 系列售罄之前找到它們?
2026-08-23 02:40:00
Bitcoin 減半機制1. Bitcoin 的協議強制執行固定的發行時間表,其中大約每 210,000 個區塊,區塊獎勵就會減少一半。 2. 該事件大約每四年發生一次,直接減少了新進入流通的 BTC 數量。 3.截至2020年減半,礦工每區塊獲得6.25 BTC;下次減少將達到 3.125 BTC...
什麼是免費的 NFT 鑄幣廠?扣除 Gas 費後「免費」真的免費嗎?
2026-08-22 10:00:29
市場波動模式1. Bitcoin 在 ETF 批准公告或重大交易所中斷等高流動性事件期間,24 小時視窗內價格波動通常超過 5%。 2. 當第 2 層升級提案進入最終治理投票階段時,以太坊的波動性指數會飆升,特別是在多個競爭性匯總同時獲得開發人員支持的情況下。 3. 穩定幣脫鉤事件(例如 2023 ...
什麼是 NFT 鑄幣通證?為什麼有些項目在鑄造之前需要一個?
2026-08-29 09:00:30
Bitcoin 減半機制1. Bitcoin 的協議強制規定 2,100 萬枚代幣的固定供應上限,並透過區塊獎勵引入新單位。 2. 每 21 萬個區塊(大約每四年),區塊獎勵就會減少一半,這個過程稱為減半。 3. 最近一次減半發生在 2024 年 4 月,每個區塊的獎勵從 6.25 BTC 減少到3...
看所有文章














