tRPC End-to-End Type Safe APIs · Leçon

Fusion et imbrication de routeurs

Apprenez à organiser une API tRPC qui s’agrandit en composant plusieurs sous-routeurs au sein d’un unique routeur d’application imbriqué.

Leçon 4 sur 413 étapes

Fusion et imbrication de routeurs est une leçon tRPC End-to-End Type Safe APIs gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage tRPC End-to-End Type Safe APIs, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours tRPC End-to-End Type Safe APIs comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

Why Split Routers?

As your API grows, one giant router becomes hard to read. tRPC lets you build small focused sub-routers and merge them.

A Users Sub-Router

Group all user-related procedures together.

export const userRouter = router({
  list: publicProcedure.query(() => getUsers()),
  byId: publicProcedure.input(z.string()).query(({ input }) => getUser(input)),
});

A Posts Sub-Router

Define another router for posts.

export const postRouter = router({
  list: publicProcedure.query(() => getPosts()),
  create: publicProcedure.input(z.object({ title: z.string() })).mutation(({ input }) => addPost(input)),
});

Nesting Routers

Combine sub-routers under namespaces in the main router.

export const appRouter = router({
  user: userRouter,
  post: postRouter,
});

Calling Nested Procedures

The client path mirrors the nesting structure.

await client.user.list.query();
await client.post.create.mutate({ title: "Hi" });

Deep Nesting

You can nest several levels for clear domains.

export const appRouter = router({
  admin: router({
    user: userRouter,
    report: reportRouter,
  }),
});

Type Inference Flows Through

No matter how deeply you nest, full type inference and autocomplete reach every procedure on the client.

Merging vs Nesting

Nesting puts a router under a namespace key. Merging with t.mergeRouters flattens two routers into one with no extra namespace.

const merged = t.mergeRouters(userRouter, postRouter);

When to Merge

Merge when procedures naturally belong at the same level; nest when you want clear domain prefixes like user.* and post.*.

Avoiding Name Collisions

Merging two routers that share a procedure name causes a conflict. Nesting avoids this because each lives under its own namespace.

Keeping Files Small

Place each sub-router in its own file and import them into one root router file. This keeps modules focused and makes the API structure easy to navigate.

Quick Check

Test your router composition knowledge.

Recap

You learned to scale a tRPC API cleanly:

  • Build small sub-routers per domain
  • Nest them under namespaces for clear paths
  • Merge when procedures share a level

Composition keeps large APIs organized while preserving full type safety.

Gratuit pour commencer

Apprends tRPC End-to-End Type Safe APIs avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
10
Leçons
40

Questions Fréquemment Posées

La leçon « Fusion et imbrication de routeurs » est-elle gratuite ?

Oui — le texte complet de « Fusion et imbrication de routeurs » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours tRPC End-to-End Type Safe APIs, passe à CoddyKit PRO. Le cours tRPC End-to-End Type Safe APIs comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Fusion et imbrication de routeurs » ?

Apprenez à organiser une API tRPC qui s’agrandit en composant plusieurs sous-routeurs au sein d’un unique routeur d’application imbriqué. Tu pratiques tRPC End-to-End Type Safe APIs avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer tRPC End-to-End Type Safe APIs ?

Aucune expérience préalable n'est requise. tRPC End-to-End Type Safe APIs sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Fusion et imbrication de routeurs » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon tRPC End-to-End Type Safe APIs ?

Oui. Chaque leçon tRPC End-to-End Type Safe APIs inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Structurer une application avec les routeurs tRPC
  2. Implémentation de procédures de requête
  3. Développement de procédures de mutation
  4. Fusion et imbrication de routeurs
← Retour à tRPC End-to-End Type Safe APIs