Jeśli korzystasz z @solana/web3.js (legacy), @solana/wallet-adapter-*
lub wcześniejszych pakietów framework-kit (@solana/client, @solana/react-hooks,
@solana/web3-compat), zachęcamy do migracji na wtyczki @solana/kit lub
@solana/web3.js v3 (albo nowszy).
Ta strona przedstawia, jakim odpowiednikom w Kit odpowiadają koncepcje, które już znasz.
Mapowanie koncepcji
| web3.js (legacy) / 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 |
web3.js v3 zachowuje powyższe nazwy oparte na klasach — Connection, Keypair,
Transaction, PublicKey — jako cienkie nakładki na wewnętrzne mechanizmy Kit, więc
kolumna Kit opisuje również to, co te klasy robią „pod maską” w wersji v3.
Migrujesz z web3.js?
Jeśli utrzymujesz duży kod oparty na @solana/web3.js (legacy), a pełne przepisanie
na Kit jest niepraktyczne, web3.js v3 stanowi pomost. Zainstaluj go za pomocą
@solana/web3.js@3. Odtwarza on klasyczne API oparte na klasach — Connection,
Keypair, Transaction, PublicKey — na bazie wewnętrznych mechanizmów @solana/kit.
Dzięki temu, że opiera się na Kit, interoperacyjność jest ścisła: PublicKey jest podstawowym typem
adresu, a jego metoda .toBase58() zwraca opatrzony znacznikiem typu ciąg Address z Kit, natomiast Keypair w wersji v3
implementuje KeyPairSigner z Kit, więc możesz przekazywać go bezpośrednio do API Kit,
wtyczek i klientów generowanych przez Codama.
Transakcje v1 i web3.js (legacy)
Jeśli wysyłasz transakcje v1 za pomocą web3.js, musisz używać wersji v3 lub nowszej.
Informacje o samej migracji znajdziesz w oficjalnym przewodniku migracji web3.js z v1 do 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?