Jeśli korzystałeś wcześniej z @solana/web3.js (v1), @solana/wallet-adapter-*
lub wcześniejszych pakietów framework-kit (@solana/client,
@solana/react-hooks, @solana/web3-compat), te podejścia są już nieaktualne.
Nowe aplikacje buduje się bezpośrednio na @solana/kit i wtyczkach kit. Ta
strona mapuje znane Ci koncepcje na ich odpowiedniki w Kit.
Mapowanie koncepcji
| web3.js v1 / wallet-adapter | Kit |
|---|---|
new Connection(url) | createSolanaRpc(url) lub .use(solanaRpc({ rpcUrl })) na kliencie |
PublicKey | Address — przekształć ciąg za pomocą address("...") |
Keypair | generateKeyPairSigner() lub wtyczki @solana/kit-plugin-signer |
SystemProgram.transfer(...) | getTransferSolInstruction(...) z @solana-program/system |
LAMPORTS_PER_SOL math | lamports(...) z @solana/kit |
Transaction / VersionedTransaction | Wiadomości transakcji budowane i pakowane przez planistę transakcji |
sendAndConfirmTransaction(...) | client.sendTransaction([...]) (planista podpisuje, wysyła i potwierdza) |
@solana/wallet-adapter-* | @solana/kit-plugin-wallet + wykrywanie Wallet Standard |
Migrujesz z web3.js?
Jeśli utrzymujesz duży kod źródłowy @solana/web3.js v1 i pełne przepisanie do
Kit nie jest jeszcze praktyczne, web3.js v3 jest mostem przejściowym. Jest
obecnie dostępny jako @solana/web3.js@rc (linia 3.0.0-rc) i odbudowuje
klasyczne API oparte na klasach — Connection, Keypair, Transaction — na
bazie wewnętrznych mechanizmów @solana/kit. Ponieważ opiera się na Kit,
interoperacyjność jest ścisła: PublicKey jest przestarzałym aliasem Address,
a Keypair w wersji v3 strukturalnie spełnia wymagania KeyPairSigner w Kit,
dzięki czemu można go bezpośrednio przekazywać do API Kit, wtyczek i klientów
generowanych przez Codama.
v3 jest nadal w fazie kandydata do wydania — przypnij dokładne wersje i spodziewaj się pewnych zmian API między kolejnymi RC. Jest to ścieżka interoperacyjności z poprzednimi wersjami, a nie domyślne rozwiązanie dla nowych projektów; nowe aplikacje powinny być budowane bezpośrednio na Kit. Informacje dotyczące samej migracji znajdziesz w oficjalnym przewodniku migracji web3.js v1 → v3.
Portfele
Kit nie używa wallet-adapter. @solana/kit-plugin-wallet wykrywa portfele
standardu Wallet Standard i udostępnia je przez client.wallet oraz
hooki React. Nowoczesne portfele (Phantom,
Solflare, Backpack i inne) ogłaszają się za pośrednictwem Wallet Standard, więc
nie są wymagane żadne osobne pakiety adapterów.
Możesz również skorzystać z gotowych narzędzi, takich jak @solana/connector, które bezpośrednio używa prymitywów Kit do łączenia się z portfelami.
Nadal używasz wallet-adapter?
Jeśli utrzymujesz aplikację opartą na @solana/wallet-adapter-* i nie jesteś
gotowy do migracji, repozytorium
wallet-adapter pozostaje punktem
odniesienia dla tego stosu. Do wszystkiego nowego preferuj wtyczkę portfela
Kit.
Co dalej
- Klient Kit — złóż klienta z wtyczek.
- React — powiązania
@solana/reacti hooki portfela. - Samouczek Next.js — kompletna aplikacja od początku do końca.
Is this page helpful?