Moralis Web3 企业级API Moralis 转移NFTs

2024-02-26 开发教程 Moralis Web3 企业级API 匿名 3

转移 ERC721 代币(不可替代)

要转移 ERC721 代币,请执行以下步骤:

  1. 构造一个options对象并设置:
    1. type:“erc721”
    2. receiver: "0x000..." //钱包地址
    3. contractAddress: "0x..." //ERC721 代币的合约
    4. tokenId:1
  2. 调用 Moralis 传递函数如下图,你可以使用​JS​或者​React
// sending a token with token id = 1
const options = {
type: "erc721",
receiver: "0x..",
contractAddress: "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
tokenId: 1,
};
let transaction = await Moralis.transfer(options);
import React from "react";
import { useWeb3Transfer } from "react-moralis";
const TransferNFT = () => {
const { fetch, error, isFetching } = useWeb3Transfer({
type: "erc721",
receiver: "0x..",
contractAddress: "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
tokenId: 1,
});
return (
// Use your custom error component to show errors
<div>
{error && <ErrorMessage error={error} />}
<button onClick={() => fetch()} disabled={isFetching}>
Transfer
</button>
</div>
);
};

转移 ERC1155 代币(半同质化)

要转移 ERC1155 代币,请按以下步骤操作:

  1. 构造一个options对象并设置:
    1. type:“erc721”
    2. receiver: "0x000..." //钱包地址
    3. contractAddress: "0x..." //ERC721 代币的合约
    4. tokenId:1
    5. amount: 15 //要转账的代币数量
  2. 调用 Moralis 传递函数如下图,你可以使用​JS​或者​React
// sending 15 tokens with token id = 1
const options = {
type: "erc1155",
receiver: "0x..",
contractAddress: "0x..",
tokenId: 1,
amount: 15,
};
let transaction = await Moralis.transfer(options);
import React from "react";
import { useWeb3Transfer } from "react-moralis";
const TransferNFT = () => {
const { fetch, error, isFetching } = useWeb3Transfer({
type: "erc1155",
receiver: "0x..",
contractAddress: "0x..",
tokenId: 1,
amount: 15,
});
return (
// Use your custom error component to show errors
<div>
{error && <ErrorMessage error={error} />}
<button onClick={() => fetch()} disabled={isFetching}>
Transfer
</button>
</div>
);
};

解决结果

Moralis.transfer()​ 执行后返回交易响应。