🎉 #Gate Alpha 第三届积分狂欢节 & ES Launchpool# 聯合推廣任務上線!
本次活動總獎池:1,250 枚 ES
任務目標:推廣 Eclipse($ES)Launchpool 和 Alpha 第11期 $ES 專場
📄 詳情參考:
Launchpool 公告:https://www.gate.com/zh/announcements/article/46134
Alpha 第11期公告:https://www.gate.com/zh/announcements/article/46137
🧩【任務內容】
請圍繞 Launchpool 和 Alpha 第11期 活動進行內容創作,並曬出參與截圖。
📸【參與方式】
1️⃣ 帶上Tag #Gate Alpha 第三届积分狂欢节 & ES Launchpool# 發帖
2️⃣ 曬出以下任一截圖:
Launchpool 質押截圖(BTC / ETH / ES)
Alpha 交易頁面截圖(交易 ES)
3️⃣ 發布圖文內容,可參考以下方向(≥60字):
簡介 ES/Eclipse 項目亮點、代幣機制等基本信息
分享你對 ES 項目的觀點、前景判斷、挖礦體驗等
分析 Launchpool 挖礦 或 Alpha 積分玩法的策略和收益對比
🎁【獎勵說明】
評選內容質量最優的 10 位 Launchpool/Gate
從零搭建NFT去中心化交易平台全攻略
從零打造一個NFT去中心化交易平台
在深入研究ERC-20代幣的去中心化交易後,我們不禁要問:如何實現ERC-721協議(即NFT)的去中心化交易呢?
目前,主流NFT交易平台採用掛單模式進行交易,類似於超市貨架上的商品展示。買家看中價格合適的NFT就可以直接購買。
本文將帶您一步步構建一個簡單的NFT去中心化交易平台,包括智能合約編寫和基礎前端界面開發。請注意,本文內容僅供學習參考,不適用於實際生產環境。
NFT簡介
NFT(非同質化代幣)遵循ERC-721協議,每個Token都是獨一無二的。NFT通常在錢包中以不同圖片形式展示,並擁有專屬ID以作區分。
由於NFT的獨特性,無法像ERC-20代幣那樣通過價格曲線定價。因此,常見的NFT交易方式是採用訂單簿形式。
訂單簿交易模式
訂單簿交易主要有兩種模式:
通常,求購單價格會低於定價單。本文將重點介紹定價單模式。
NFT去中心化交易平台核心功能
一個基礎的NFT去中心化交易平台應具備以下功能:
上架NFT流程
合約中需維護一個用戶上架商品價格映射表。雖然這部分數據可以存儲在中心化服務中以減輕合約負擔,但本文將其保留在合約中。
購買NFT流程
構建NFT去中心化交易平台
接下來,我們將逐步實現一個NFT去中心化交易平台。
1. 創建測試用NFT
爲測試需要,我們可以使用Remix快速部署一個符合ERC-721協議的NFT合約。當然,也可以直接使用現有的NFT進行測試。
2. 智能合約開發
我們的合約需要包含以下核心功能:
2.1 NFT上架
賣家上架NFT時需要指定NFT和價格。上架過程包括:
合約上架方法需完成:
2.2 NFT購買
買家購買NFT時,合約需執行:
2.3 取消上架
賣家可取消上架NFT。合約中使用isActive字段標記商品是否有效,取消上架時只需將該字段設爲false。
2.4 提取手續費
平台可在每筆交易中收取手續費,本例中將手續費存儲在合約中。
3. 前端開發
前端開發使用以下工具:
前端應用包含三個主要頁面:Mint、Buy和Portfolio。
3.1 連接錢包
使用Ant Design Web3的連接組件實現錢包連接功能。爲提高查詢速度,建議使用節點服務如ZAN的endpoint。
3.2 Mint頁面
使用wagmi的useWriteContract方法實現NFT鑄造功能。
3.3 Portfolio頁面
展示用戶擁有的NFT,支持上架和下架操作。使用opensea API獲取NFT列表,並通過合約方法判斷NFT上架狀態。
3.4 Buy頁面
展示所有已上架的NFT,並提供購買功能。購買時調用purchaseNFT方法,使用ETH支付。
完成以上步驟後,一個基礎的NFT去中心化交易平台就搭建完成了。您可以將其部署到Vercel等平台上進行測試和使用。