Tài liệu SolanaLiteSVMTypeScriptVí dụ

Chuyển SOL

Giao dịch Solana cơ bản nhất: chuyển SOL từ tài khoản này sang tài khoản khác. Đây là bài kiểm tra đầu tiên để xác minh rằng cài đặt LiteSVM của bạn hoạt động tốt trước khi kiểm tra các logic chương trình phức tạp hơn.

Ví dụ Đầy Đủ

import { createClient, generateKeyPairSigner, lamports } from "@solana/kit";
import { litesvm } from "@solana/kit-plugin-litesvm";
import { signer } from "@solana/kit-plugin-signer";
import { systemProgram } from "@solana-program/system";
// Payer first, then the LiteSVM transport, then program plugins.
const mySigner = await generateKeyPairSigner();
const client = createClient()
.use(signer(mySigner))
.use(litesvm())
.use(systemProgram());
const recipient = await generateKeyPairSigner();
// Airdrop SOL to the payer
client.svm.airdrop(client.payer.address, lamports(10_000_000_000n));
// Check initial balance
const senderInitial = client.svm.getBalance(client.payer.address) ?? 0n;
console.log("Sender initial:", Number(senderInitial) / 1e9, "SOL");
// Build and send the transfer
await client.system.instructions
.transferSol({
source: client.payer,
destination: recipient.address,
amount: lamports(1_000_000_000n) // 1 SOL
})
.sendTransaction();
// Check final balances
const senderFinal = client.svm.getBalance(client.payer.address) ?? 0n;
const recipientFinal = client.svm.getBalance(recipient.address) ?? 0n;
console.log("Sender final:", Number(senderFinal) / 1e9, "SOL");
console.log("Recipient final:", Number(recipientFinal) / 1e9, "SOL");

Kết Quả Mong Đợi

Sender initial: 10 SOL
Sender final: 8.999995 SOL
Recipient final: 1 SOL

Số dư cuối cùng của người gửi thấp hơn 9 SOL một chút do phí giao dịch (5.000 lamport mỗi chữ ký).

Phần này đề cập đến loại giao dịch đơn giản nhất. Để kiểm tra với các chương trình tùy chỉnh, xem Kiểm Tra Chương Trình. Để kiểm tra chuyển token (mint, ATA), xem Kiểm Tra Token.

Is this page helpful?

Mục lục

Chỉnh sửa trang