Adaptador de Billetera
Configura los hooks de @solana/wallet-adapter-react para la conexión y la firma.
Busca en todas las páginas de la documentación
Configura los hooks de @solana/wallet-adapter-react para la conexión y la firma.
npm install @solana/wallet-adapter-react @solana/wallet-adapter-react-ui @solana/wallet-adapter-wallets"use client";
import { ConnectionProvider, WalletProvider } from "@solana/wallet-adapter-react";
import { WalletModalProvider } from "@solana/wallet-adapter-react-ui";
import "@solana/wallet-adapter-react-ui/styles.css";Cuándo usar esto:
useWallet."use client";
import { useMemo } from "react";
import { ConnectionProvider, WalletProvider } from "@solana/wallet-adapter-react";
import { WalletModalProvider } from "@solana/wallet-adapter-react-ui";
import { PhantomWalletAdapter, SolflareWalletAdapter } from "@solana/wallet-adapter-wallets";
export function SolanaProviders({ children }: { children: React.ReactNode }) {
const endpoint = process.env.NEXT_PUBLIC_RPC_URL!;
const wallets = useMemo(
() => [new PhantomWalletAdapter(), new SolflareWalletAdapter()],
[]
);
return (
<ConnectionProvider endpoint={endpoint}>
<WalletProvider wallets={wallets} autoConnect>
<WalletModalProvider>{children}</WalletModalProvider>
</WalletProvider>
</ConnectionProvider>
);
}Lo que esto demuestra:
ConnectionProvider aún envuelve el endpoint HTTP (migra las lecturas al kit por separado).autoConnect restaura la sesión anterior.useWallet expone publicKey, connected, signTransaction.create-solana-dapp puede preferir @wallet-ui/react; ambos son válidos.wallet-adapter en SSR - errores de window. Solución: solo en el límite de "use client".autoConnect sin UX - conexiones sorpresa. Solución: esqueleto de carga + desconexión.Connection de @solana/web3.js obsoleto - doble pila. Solución: usar RPC del kit para lecturas, adaptador para firmar.| Alternativa | Usar Cuando | No Usar Cuando |
|---|---|---|
@wallet-ui/react | Nuevas plantillas de create-solana-dapp | Fuerte inversión en hooks de adaptador |
| Wallet Standard directo | Modal personalizado, sin paquete de UI | Necesidad de modal rápido |
Coincide la URL de RPC, la red de la billetera y los IDs de programa con un solo clúster.
Usa @solana/kit 7.0.0 para nuevo código frontend.
Surfpool 0.12.0 o devnet con faucet SOL.
confirmed para UX; finalized para lecturas de alto valor.
Proveedores en el layout del cliente; las lecturas pueden ser del lado del servidor.
Muestra reintentar; nunca asumas aprobación.
Instrucciones de presupuesto de cómputo en mainnet congestionada.
Usa Mobile Wallet Adapter para aplicaciones React Native.
Nunca expongas los pares de claves del servidor al navegador.
Regenera los clientes tipados en CI.
Versiones de Stack: Esta página fue escrita para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0, y LiteSVM 0.6.x.
Revisado por Chris St. John·Última actualización: 16 jul 2026