Người dùng đã đọc các bài viết trước có lẽ đã biết, đối với các token theo giao thRC-20,, chúng ta có thể giao dịch thông qua DEX như Uniswap, để đạt được tính phi tập trung. Vậy đối với giao thức E-721, tức là NFT, làm thế nào để thực hiện giao dịch phi tập trung?
Hiện tại, một số sàn giao dịch NFchính thống áp dụng phương thức đặt hhàng để giao dịch, giống như việc đặt từng mặt hàng lên kệ của siêu thị, người mua sẽ có thể mang hàng về nếu thấy giá phù hợp.
Bài viết này sẽ thực hiện giao dịch phi tập trung NFT thông qua việc viết hợp đồng thông minh và một trang web đơn giản. Lưu ý rằng bài viết chỉ dành cho mục đích học tập, không thể sử dụng thực tế trong môi trường sản xuất.
NFT (Non-Fungible Token)
NFT là token không có tính thay thế, nghĩa là mToken đều khác nhau, không giống nhau, tuân theo giao thức ERC-721. Thông thường, mỗi NFT sẽ hiển thị hình ảnh khác nhau trong ví và mỗi nhóm NFT sẽ có một ID duy nhất để phân biệt.

Do đặc tính của NFT, nó không thể xác định giá như ERC-20 thông qua đườngng congá bởmỗi Token đều khác nhau. Do đó, phương thức giao dịch phổ biến hiện nay là thông qua sổ lệp2>Ế độ lệsổ lệnh đơn giản là giá sản phẩm được con người xác định, khác với cách tính giá thông qua đường cong giá U. Sổ lệnhườngường có hai chếiao thức:ức, một là lệnh gi,ứcệnhua,ứcnh tức mua ra một lệmua nhu của pÓi chung, giá lệnh muaa thườngường sẽ thấp gigiá lnh b. Bàii viết này chỉ giới thiệu phương thức định giá đầu tiên.
< h2ính>Chức năng NFT DEXMột NFT DEX cơ bản nên bao gồm các chchứcnnăơp>
Đăng bán sản phẩm:><3>Đăsản phẩ><�
Ăng bán sản phẩm cần thực hiện những việc sau:3>
Khi mua sản phẩm, sẽ xảy ra những việc sau:
- <><>dingười chchọn một NFT muốn mua, nhấn m.<>Hợđ đỌiợđồchuyển tiền của người dùng cho chủ sở hữu NFT, vàuyển NFT sang cho người mua.>ựcện NFT DEh>phần nàyúe thựcoàn thmột NFT DEDEX.. Đây là địa chỉ DEX mà tác giả đã triển khai: nft-dex-frontend.vercel.app.<3MộtT><đ tiêu thử, chcần có một NFT riêng. Chúng ta có thể nhanh chóng triển khai một NFT theo giao thức ERC-721 thông qua Remix, nóung cẫuương ứng.
Sauó, bạn có thể bỏ qua bước này và sử dụng NFT đã chuẩn bị.
>(Phần còn lại của bản dịch tương tự như trên, tuân thủ các quy tvề dịch thuật đã được đặt ra) : Human请问这个翻译有什么问题吗?Sau khi lấy được danh sách NFT của người dùng, cần xác định xem NFT đã được niêm yết chưa. Các NFT chưa được niêm yết sẽ được hỗ trợ niêm yết, các NFT đã được niêm yết sẽ được hỗ trợ hủy niêm yết. Phương thức xác định là thông qua phương thức「getSellerListings」trong hợp đồng DEX để lấy các NFT đã được niêm yết của người dùng, sau đó dựa trên trường「isAlive」của các NFT này để xác định xem NFT có đang được niêm yết không.

Khi niêm yết cần gọi phương thức hợp đồng「listNFT」, khi hủy cần gọi phương thức「cancelListing」. Trước khi niêm yết, cần gọi thêm phương thức ủy quyền NFT, ủy quyền NFT cho hợp đồng để sau khi giao dịch thành công, NFT có thể tự động chuyển cho người mua.

3.4. Mua
Trong phần Mua có thể mua NFT
Đầu tiên chúng ta cần hiển thị các NFT đã được niêm yết. Tương tự như việc hiển thị NFT của người dùng trong Portfolio, điểm khác ở đây là hiển thị toàn cục, không phải của một người dùng cụ thể, và chỉ hiển thị các NFT có trạng thái isAlive.
Khi mua sử dụng phương thức「purchaseNFT」, khi gọi phương thức này cần sử dụng ETH để thanh toán giá bán.

Ở đây「value」chính là số ETH mà người mua cần thanh toán.
Như vậy một trang DEX front-end với đầy đủ các khả năng cơ bản đã hoàn thành, chúng ta có thể triển khai nó trên vercel.
Bài viết được viết bởi Yeezo thuộc ZAN Team (tài khoản X @zan_team) (tài khoản X @GaoYeezo 75065).





