Membangun platform perdagangan NFT desentralisasi dari nol: implementasi smart contract dan front-end

robot
Pembuatan abstrak sedang berlangsung

Membangun platform perdagangan NFT Desentralisasi yang sederhana

Untuk NFT yang mengikuti protokol ERC-721, bagaimana cara mewujudkan perdagangan desentralisasi? Saat ini, sebagian besar platform perdagangan NFT utama menggunakan metode pemesanan untuk melakukan transaksi, mirip dengan barang yang dipajang di rak, pembeli dapat membeli jika merasa harga sesuai. Artikel ini akan menjelaskan cara mewujudkan fungsi perdagangan NFT desentralisasi dasar dengan menulis kontrak pintar dan halaman depan sederhana.

NFT( Non-Fungible Token ) Deskripsi

NFT adalah token tidak fungible, mengikuti protokol ERC-721, setiap Token adalah unik. NFT umumnya akan menampilkan gambar yang berbeda di dompet, dan setiap kelompok NFT memiliki ID unik untuk membedakannya. Karena sifat NFT, harga tidak dapat ditetapkan melalui kurva harga seperti token ERC-20, sehingga cara transaksi yang umum adalah melalui bentuk buku pesanan.

Web3 Pemula Seri: Mewujudkan NFT DEX dari Nol

Mode Perdagangan Buku Pesanan

Dalam mode buku pesanan, harga barang ditetapkan secara manual, berbeda dengan cara pembuat pasar otomatis yang menghitung harga berdasarkan kurva harga. Buku pesanan biasanya memiliki dua mode perdagangan:

  1. Penetapan harga: Penjual menetapkan harga jual, pembeli dapat membeli jika merasa cocok.
  2. Permintaan Pembelian: Pembeli mengeluarkan pesanan permintaan, penjual dapat menjual jika merasa harga sesuai.

Secara umum, harga order pembelian akan lebih rendah daripada harga order penetapan. Artikel ini terutama memperkenalkan cara transaksi order penetapan.

Web3 pemula seri: Mewujudkan NFT DEX dari nol

Fitur dasar platform NFT

Sebuah platform perdagangan NFT dasar harus mencakup fitur-fitur berikut:

  1. Daftarkan produk: Menjual NFT dengan harga yang ditentukan
  2. Membeli barang: membeli dengan harga NFT
  3. Biaya platform: dikenakan berdasarkan persentase dari harga transaksi.

proses penempatan barang

  1. Frontend: Pengguna memilih NFT dan menetapkan harga, klik untuk mendaftar
  2. Kontrak: Pengguna memberikan otorisasi untuk operasi kontrak NFT

Dalam kontrak perlu memelihara tabel pemetaan harga produk yang diunggah oleh pengguna.

Proses Pembelian Barang

  1. Front-end: Pengguna memilih NFT dan mengklik beli
  2. Kontrak: Mengalihkan dana pembeli kepada penjual, NFT kepada pembeli

Web3 Pemula Seri: Mewujudkan NFT DEX dari Nol

Mewujudkan platform perdagangan NFT

Bagian ini akan membangun platform perdagangan NFT sederhana dari nol.

1. Buat NFT uji coba

Anda dapat menggunakan Remix untuk dengan cepat menerapkan kontrak NFT protokol ERC-721 untuk pengujian.

Web3 pemula seri: Mewujudkan DEX NFT dari nol

2. Menulis kontrak pintar

Kontrak perlu mencakup metode utama berikut:

2.1 Penjual Mencantumkan NFT

Proses:

  1. Pengguna memilih NFT
  2. Atur harga
  3. Memberikan NFT kepada kontrak
  4. Memanggil metode peluncuran

Metode pemasangan yang diperlukan:

  1. Memverifikasi kepemilikan NFT
  2. Tambahkan catatan listing
  3. Memicu peristiwa peluncuran

Web3 Pemula Seri: Mewujudkan NFT DEX dari nol

2.2 Pembeli membeli NFT

Langkah-langkah pelaksanaan kontrak:

  1. Membaca data NFT
  2. Hitung dan potong biaya transaksi
  3. Transfer NFT ke pembeli
  4. Memicu peristiwa pembelian

Web3 Pemula Seri: Membangun NFT DEX dari nol

2.3 Batalkan Penempatan

Atur field isActive dari catatan listing menjadi false.

2.4 Penarikan Biaya Transaksi

Tarik biaya yang terakumulasi dalam kontrak ke alamat yang ditentukan.

Web3 Pemula Series: Membangun DEX NFT dari Nol

3. Mengembangkan antarmuka depan

Gunakan alat berikut:

  • Ant Design Web3: menghubungkan dompet dan menampilkan NFT
  • Wagmi: Interaksi dengan dompet
  • Next.js + Vercel: deploy proyek

Frontend terdiri dari tiga halaman: Mint, Buy, dan Portfolio.

Web3 Pemula Series: Membangun DEX NFT dari Nol

3.1 Hubungkan Dompet

Menggunakan komponen koneksi Ant Design Web3 untuk menghubungkan dompet.

Seri Pemula Web3: Mewujudkan DEX NFT dari Nol

3.2 Halaman Mint

Digunakan untuk mencetak NFT pengujian, menggunakan metode useWriteContract dari wagmi untuk memanggil kontrak.

Web3 pemula seri: Mewujudkan NFT DEX dari nol

Halaman Portofolio 3.3

Menampilkan NFT pengguna, mendukung operasi penjualan dan pembelian.

Proses peluncuran:

  1. Mengotorisasi NFT ke kontrak
  2. Memanggil metode listNFT

Hapus: Panggil metode cancelListing

Web3 pemula seri: Mewujudkan NFT DEX dari nol

3.4 Halaman Beli

Menampilkan semua NFT yang tersedia, mendukung operasi pembelian.

Panggil metode purchaseNFT saat membeli, gunakan ETH untuk pembayaran.

Seri Pemula Web3: Mewujudkan DEX NFT dari Nol

Setelah menyelesaikan langkah-langkah di atas, sebuah platform perdagangan NFT dengan fungsi dasar telah terwujud, yang dapat dikerahkan ke Vercel untuk digunakan dalam pengujian.

Web3 Pemula Seri: Mewujudkan NFT DEX dari Nol

Lihat Asli
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Hadiah
  • 3
  • Bagikan
Komentar
0/400
LiquidityWitchvip
· 4jam yang lalu
Berapa banyak biaya transaksi yang bisa didapat? Berikan informasi yang nyata.
Lihat AsliBalas0
TheMemefathervip
· 4jam yang lalu
Biaya transaksi dapat menghasilkan banyak keuntungan
Lihat AsliBalas0
VibesOverChartsvip
· 4jam yang lalu
Sudah ingin memplay people for suckers baru lagi, ya?
Lihat AsliBalas0
  • Sematkan
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)