Bangun aplikasi jalur ganda
Panduan langkah demi langkah untuk aplikasi jalur ganda — satu kontrak Solidity yang digunakan oleh pengguna MetaMask dan pengguna Phantom (Solana), dengan tepat apa yang terjadi di setiap langkah.
Yang Anda tulis — sebuah vault ERC-20 standar
interface IERC20 {
function transfer(address to, uint256 amount) external returns (bool);
function transferFrom(address from, address to, uint256 amount) external returns (bool);
}
contract Vault {
IERC20 public immutable token; // pembungkus wUSDC
mapping(address => uint256) public balanceOf;
constructor(IERC20 _token) { token = _token; }
function deposit(uint256 amount) external {
require(token.transferFrom(msg.sender, address(this), amount));
balanceOf[msg.sender] += amount;
}
function withdraw(uint256 amount) external {
balanceOf[msg.sender] -= amount;
require(token.transfer(msg.sender, amount));
}
}Dua lajur
Lajur
Dompet
Cara aplikasi memanggilnya
Gagasan utamanya: synthetic adalah penerus lewat
Sekali saja: Aktifkan (siapkan synthetic)
Apa yang dibutuhkan masing-masing sisi
Kebutuhan
Mengapa
Nilai MASUK — setor (langkah demi langkah)
Nilai KELUAR — tarik (langkah demi langkah)
Hal-hal yang sering keliru — semuanya ditangani oleh SDK
Aplikasi yang sama dari MetaMask
Apa berikutnya
Terakhir diperbarui
Apakah ini membantu?