Erc-20
網頁地址到地址的簡單轉賬erc20
這是問題:
- 使用 Solidity,我如何將 ERC20 代幣從目前地址轉移到另一個地址?
- 將 ERC20 代幣從一個地址轉移到另一個地址
- ERC20 代幣轉移到另一個地址
- 將契約轉移到地址或地址到地址
- 防止從 ERC20 智能合約中的特定地址轉移
- 從合約地址轉移到另一個地址
- 使用 Solidity,我如何將 ERC20 代幣從目前地址轉移到另一個地址?
- 從合約地址轉移到發件人
- 從契約的簡單轉移不起作用
- 任何 erc20 令牌在 ethers.js 中傳輸簡單程式碼?
- 從 ERC20 令牌的 0x0 地址獲取傳輸事件
ETC…..
沒有單一的答案顯示誰來做
$$ not just here $$. 我只是在尋找最簡單的方法來在網頁上從一個地址轉移到另一個地址。 我需要前端部分。有可能做到嗎?
我在測試網上複製了 USDT。我也使用元遮罩 web3。
我理解“ transferFrom 方法只有在所有者(_from 地址)允許接收者(_to 地址)提取資金時才有效,這是通過呼叫函式approve(address _spender, uint256 _value) 來完成的。 ”
您首先需要將您的錢包連接到網頁(和庫)。我喜歡使用Ethers作為 web3 客戶端庫。
const provider = new ethers.providers.Web3Provider(window.ethereum, "any"); // Prompt user for account connections await provider.send("eth_requestAccounts", []); const signer = provider.getSigner(); console.log("Account:", await signer.getAddress());
在此之後,您需要為您的合約創建介面。為此,您需要兩件事,地址和ABI
地址是 ERC20 代幣的部署地址。此處使用USDC 代幣地址,並指定代幣中的小數位數。
const CONTRACT_ADDRESS = "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"; const DECIMALS = 6
合約的完整 ABI 是在從 Solidity 建構時創建的。如果幸運的話,您可以從 Etherscan 獲得它。
幸運的是,ERC20 合約是標準化的,因此您可以使用通用 ERC20 abi,或者只提供您正在使用的單一方法的 ABI,如下所示:
const abi = ["function transfer(address to, uint amount)"];
現在您可以啟動合約並呼叫該
Transfer
方法。const erc20 = new ethers.Contract(CONTRACT_ADDRESS, abi, provider); const transferToAddress = "0x..." const amount = ethers.utils.parseUnits("1", DECIMALS); await erc20.transfer(transferToAddress, amount)