Configurer un client tRPC
Cette page a été traduite par PageTurner AI (bêta). Non approuvée officiellement par le projet. Vous avez trouvé une erreur ? Signaler un problème →
1. Installer la bibliothèque client tRPC
Utilisez votre gestionnaire de paquets préféré pour installer @trpc/client, ainsi que @trpc/server qui contient certains types requis.
- npm
- yarn
- pnpm
- bun
- deno
npm install @trpc/server @trpc/client
yarn add @trpc/server @trpc/client
pnpm add @trpc/server @trpc/client
bun add @trpc/server @trpc/client
deno add npm:@trpc/server npm:@trpc/client
Si vous utilisez un agent de codage IA, installez les compétences tRPC pour une meilleure génération de code :
bashnpx @tanstack/intent@latest install
bashnpx @tanstack/intent@latest install
2. Importer votre routeur d'application
Cette page a été traduite par PageTurner AI (bêta). Non approuvée officiellement par le projet. Vous avez trouvé une erreur ? Signaler un problème →
Importez le type AppRouter dans l'application cliente. Ce type représente la structure complète de votre API.
utils/trpc.tstsimport type { AppRouter } from '../server/router';
utils/trpc.tstsimport type { AppRouter } from '../server/router';
En utilisant import type, vous garantissez que la référence sera supprimée lors de la compilation, évitant ainsi d'importer par inadvertance du code serveur dans votre client. Pour plus d'informations, consultez la documentation TypeScript.
3. Initialiser le client tRPC
Créez un client tRPC avec la méthode createTRPCClient, puis ajoutez un tableau links contenant un lien terminal pointant vers votre API. Pour en savoir plus sur les liens tRPC, consultez cette page.
client.tstsimport {createTRPCClient ,httpBatchLink } from '@trpc/client';import type {AppRouter } from './server';constclient =createTRPCClient <AppRouter >({links : [httpBatchLink ({url : 'http://localhost:3000/trpc',// You can pass any HTTP headers you wish hereasyncheaders () {return {authorization :getAuthCookie (),};},}),],});
client.tstsimport {createTRPCClient ,httpBatchLink } from '@trpc/client';import type {AppRouter } from './server';constclient =createTRPCClient <AppRouter >({links : [httpBatchLink ({url : 'http://localhost:3000/trpc',// You can pass any HTTP headers you wish hereasyncheaders () {return {authorization :getAuthCookie (),};},}),],});
4. Utiliser le client tRPC
En arrière-plan, cela crée un Proxy JavaScript typé qui vous permet d'interagir avec votre API tRPC de manière totalement type-safe :
client.tstsconstbilbo = awaitclient .getUser .query ('id_bilbo');// => { id: 'id_bilbo', name: 'Bilbo' };constfrodo = awaitclient .createUser .mutate ({name : 'Frodo' });// => { id: 'id_frodo', name: 'Frodo' };
client.tstsconstbilbo = awaitclient .getUser .query ('id_bilbo');// => { id: 'id_bilbo', name: 'Bilbo' };constfrodo = awaitclient .createUser .mutate ({name : 'Frodo' });// => { id: 'id_frodo', name: 'Frodo' };
Vous êtes prêt !