Jamdesk Documentation logo

Extraits de contenu

Blocs de contenu réutilisables que vous pouvez importer sur plusieurs pages. Stockez du texte commun, des composants ou du code dans le répertoire snippets.

Les snippets sont des blocs de contenu réutilisables stockés dans un répertoire /snippets. Importez-les dans n'importe quelle page MDX pour éviter de dupliquer le contenu.

Créer des snippets

Créez un répertoire /snippets à la racine de votre documentation :

my-docs/
├── docs.json
├── introduction.mdx
└── snippets/
    ├── prerequisites.mdx
    ├── installation.mdx
    └── support-cta.mdx

Rédigez le contenu des snippets comme n'importe quel fichier MDX, mais sans frontmatter :

snippets/prerequisites.mdx
Before you begin, make sure you have:

- Node.js 20 or higher
- A GitHub account
- A text editor (VS Code recommended)

Utiliser des snippets

Importez et utilisez des snippets dans vos pages :

getting-started.mdx
---
title: Getting Started
---

## Prerequisites


<Prerequisites />

## Installation

Continue with your page content...

Composants de snippet

Les snippets peuvent contenir des composants Jamdesk :

snippets/support-cta.mdx
<Columns cols={2}>
  <Card title="Documentation" icon="book" href="/docs">

    Browse our guides

</Card>
  <Card title="Contact Support" icon="headset" href="/support">

    Get help from our team

</Card>
</Columns>

Utilisez-les sur plusieurs pages :


## Need Help?

<SupportCTA />

Snippets interactifs

Pour les snippets nécessitant des hooks React (useState, useEffect, etc.), utilisez des fichiers .tsx avec la directive 'use client' :

snippets/counter.tsx
'use client';

import { useState } from 'react';

export function Counter() {
  const [count, setCount] = useState(0);
  return (
    <button onClick={() => setCount(c => c + 1)}>
      Count: {count}
    </button>
  );
}

Importez dans MDX :


<Counter />

La directive 'use client' est requise pour tout composant utilisant des hooks React. Sans elle, vous obtiendrez des erreurs "useState is not defined".

Snippets paramétrés

Passez des props pour rendre les snippets dynamiques :

snippets/api-key-warning.mdx
export const ApiKeyWarning = ({ service }) => (
  <Warning>

    Never commit your {service} API key to version control. Use environment variables instead.

</Warning>
);

Utilisez avec des props :


<ApiKeyWarning service="Stripe" />

Organiser les snippets

Pour les projets plus importants, organisez les snippets en sous-répertoires :

snippets/
├── components/
│   ├── cta-cards.mdx
│   └── feature-table.mdx
├── warnings/
│   ├── api-key.mdx
│   └── deprecation.mdx
└── shared/
    ├── prerequisites.mdx
    └── support-links.mdx

Importez avec le chemin complet :


Cas d'usage courants

Cas d'usageExemple
PrérequisConfiguration système, création de compte
Étapes d'installationCommandes CLI d'installation sur plusieurs plateformes
Authentification APIConfiguration d'authentification répétée sur plusieurs endpoints
CTAs de supportLiens de contact en fin de pages de dépannage
Notices de dépréciationAvertissements pour les fonctionnalités obsolètes
Exemples de codeModèles de code réutilisables

Snippet vs composant inline

FonctionnalitéSnippetComposant inline
Réutilisable sur plusieurs pagesOuiNon (spécifique à la page)
Peut utiliser des hooks ReactOui (avec 'use client')Non
Peut importer des packages externesOui (fichiers .tsx)Non
SyntaxeInstruction d'importexport const dans MDX

Utilisez les snippets pour le contenu apparaissant sur plusieurs pages. Utilisez les composants inline pour des composants de présentation ponctuels au sein d'une seule page.

Prochaines étapes

Composants React personnalisés

Définir des composants inline dans MDX

Bases MDX

Apprendre les fondamentaux MDX