Từ 0 đến 1: Xây dựng DEX NFT toàn diện

robot
Đang tạo bản tóm tắt

Từ số không xây dựng một sàn giao dịch NFT phi tập trung

Trong bài viết trước, chúng tôi đã thảo luận về cách các token ERC-20 được giao dịch thông qua sàn giao dịch tập trung. Vậy đối với NFT tuân theo giao thức ERC-721, làm thế nào để thực hiện giao dịch phi tập trung?

Hiện nay, hầu hết các nền tảng giao dịch NFT phổ biến đều sử dụng mô hình đặt lệnh, tương tự như việc trưng bày hàng hóa trên kệ cho người mua lựa chọn. Bài viết này sẽ thông qua việc viết hợp đồng thông minh và giao diện front-end đơn giản, để thực hiện một hệ thống giao dịch NFT phi tập trung cơ bản. Cần lưu ý rằng, bài viết này chỉ để học tập tham khảo, không phù hợp với môi trường sản xuất.

Web3 người mới series: Từ con số không để hiện thực hóa một NFT DEX

Giới thiệu về NFT

NFT tức là mã thông báo không thể thay thế, mỗi Token là duy nhất. Nó tuân theo giao thức ERC-721, thường được hiển thị trong ví dưới dạng các hình ảnh khác nhau, và mỗi NFT đều có ID duy nhất để phân biệt.

Do tính chất đặc biệt của NFT, không thể định giá như token ERC-20 thông qua đường cong giá. Do đó, giao dịch NFT thường được thực hiện dưới hình thức sổ lệnh.

Web3 người mới bắt đầu: Từ con số không thực hiện một NFT DEX

Chế độ giao dịch sổ lệnh

Trong chế độ sổ lệnh, giá sản phẩm do người bán tự định ra, không phải do thuật toán tính toán. Thông thường có hai hình thức giao dịch:

  1. Đơn định giá: Người bán thiết lập giá bán, người mua thấy hợp lý thì có thể mua.
  2. Đơn mua: Người mua phát hành đơn đặt hàng mua, người bán cảm thấy giá phù hợp thì có thể bán.

Bài viết này sẽ tập trung vào phương thức giao dịch định giá đầu tiên.

Web3 người mới series: Từ con số 0 để thực hiện một NFT DEX

Chức năng cơ bản của sàn giao dịch NFT

Một sàn giao dịch NFT cơ bản nên bao gồm các chức năng sau:

  1. Đưa sản phẩm lên kệ: Đưa NFT lên kệ theo mức giá đã định.
  2. Mua hàng hóa: Mua theo giá NFT
  3. Thu phí: thu theo tỷ lệ giá giao dịch

quy trình niêm yết

  1. Người dùng chọn NFT và thiết lập giá trên giao diện.
  2. Người dùng ủy quyền hợp đồng thao tác NFT của họ
  3. Ghi lại thông tin niêm yết trong hợp đồng

Quy trình mua

  1. Người dùng chọn NFT ở giao diện trước và nhấn mua
  2. Hợp đồng sẽ chuyển tiền của người mua cho người bán và chuyển NFT cho người mua.

Web3新人系列:从零实现一个NFT DEX

Thực hiện sàn giao dịch NFT

Dưới đây chúng ta sẽ bắt đầu từ số không để thực hiện một sàn giao dịch NFT đơn giản.

1. Tạo NFT thử nghiệm

Để thuận tiện cho việc kiểm tra, chúng ta có thể sử dụng Remix để nhanh chóng triển khai một hợp đồng NFT theo giao thức ERC-721. Tất nhiên, cũng có thể sử dụng NFT hiện có để kiểm tra.

Web3新手系列:从零实现一个NFT DEX

2. Viết hợp đồng thông minh

Hợp đồng cần thực hiện các chức năng chính sau:

2.1 Người bán niêm yết NFT

Quy trình:

  1. Xác minh quyền sở hữu NFT
  2. Thêm ghi chép niêm yết
  3. Kích hoạt sự kiện niêm yết

Web3 mới bắt đầu: Từ con số không để thực hiện một NFT DEX

2.2 Người mua mua NFT

Quy trình:

  1. Lấy thông tin niêm yết NFT
  2. Tính toán và khấu trừ phí giao dịch
  3. Chuyển nhượng quyền sở hữu NFT
  4. Kích hoạt sự kiện mua

Web3 người mới series: Từ con số không để thực hiện một NFT DEX

2.3 Hủy niêm yết

Thông qua việc đặt trường isActive thành false.

Web3 người mới series: Từ con số không tạo ra một NFT DEX

2.4 Rút phí giao dịch

Chủ hợp đồng có thể rút tiền phí tích lũy.

Web3 người mới series: Từ số không để thực hiện một NFT DEX

3. Phát triển giao diện phía trước

Sử dụng các công cụ sau:

  • Ant Design Web3: Kết nối ví và hiển thị NFT
  • Wagmi: tương tác với ví
  • Next.js + Vercel: triển khai dự án

Giao diện phía trước bao gồm ba trang chính:

  • Mint: Đúc NFT thử nghiệm
  • Mua:Thị trường NFT
  • Portfolio: Quản lý NFT của người dùng

Web3 người mới series: Từ con số không thực hiện một NFT DEX

3.1 Kết nối ví

Sử dụng thành phần kết nối Ant Design Web3 để thực hiện.

Web3新手系列:从零实现 một NFT DEX

3.2 Trang Mint

Sử dụng phương thức useWriteContract của wagmi để gọi hợp đồng mint NFT.

Web3 người mới series: Từ con số không để thực hiện một NFT DEX

3.3 Trang Portfolio

Hiển thị NFT của người dùng và hỗ trợ thao tác niêm yết/gỡ niêm yết.

Web3 mới bắt đầu: Từ con số không để hiện thực hóa một NFT DEX

3.4 Trang mua

Hiển thị tất cả NFT đang bán và hỗ trợ chức năng mua.

Thông qua các bước trên, chúng ta đã tạo ra một sàn giao dịch NFT phi tập trung với các chức năng cơ bản. Cuối cùng, có thể triển khai dự án lên Vercel để sử dụng.

Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • 7
  • Chia sẻ
Bình luận
0/400
ChainMaskedRidervip
· 08-04 18:11
Bài viết này chỉ toàn là lời vô nghĩa, chẳng khác gì không nói.
Xem bản gốcTrả lời0
CommunityWorkervip
· 08-04 01:49
Ai cần dex mà không có phí gas chứ?
Xem bản gốcTrả lời0
MelonFieldvip
· 08-02 21:21
Wow, bài viết này viết dễ quá!
Xem bản gốcTrả lời0
GmGmNoGnvip
· 08-02 21:21
Lười học mã, vẫn đi Phiếu giảm giá thôi.
Xem bản gốcTrả lời0
ILCollectorvip
· 08-02 21:03
Ah ah ah, lại có bộ sưu tập mới để chơi đùa với mọi người rồi.
Xem bản gốcTrả lời0
RugPullProphetvip
· 08-02 21:00
Có tay thì làm được, trước tiên hãy hành động để tôn trọng.
Xem bản gốcTrả lời0
LazyDevMinervip
· 08-02 20:53
Front-end viết hỏng rồi sao không dùng sản xuất nữa.
Xem bản gốcTrả lời0
  • Ghim
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)