Moralis 转移NFTs
转移 ERC721 代币(不可替代)
要转移 ERC721 代币,请执行以下步骤:
- 构造一个options对象并设置:
- type:“erc721”
- receiver: "0x000..." //钱包地址
- contractAddress: "0x..." //ERC721 代币的合约
- tokenId:1
- 调用 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 代币,请按以下步骤操作:
- 构造一个options对象并设置:
- type:“erc721”
- receiver: "0x000..." //钱包地址
- contractAddress: "0x..." //ERC721 代币的合约
- tokenId:1
- amount: 15 //要转账的代币数量
- 调用 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()
执行后返回交易响应。