React
Utilisez des composants React préconstruits pour ajouter Docs Embed à votre application React
Étapes
2
3
4
Ajouter le composant GitBookFrame
function App() {
return (
<GitBookProvider siteURL="https://docs.company.com">
<div className="app">
<YourAppContent />
<GitBookFrame
visitor={{
token: 'your-jwt-token', // Optionnel : pour le contenu adaptatif ou l'accès authentifié
unsignedClaims: { userId: '123' } // Optionnel : claims personnalisés pour des expressions dynamiques
}}
/>
</div>
</GitBookProvider>
);
}5
Personnaliser l'intégration
<GitBookProvider siteURL="https://docs.company.com">
<GitBookFrame
tabs={['assistant', 'docs']}
greeting={{ title: 'Bienvenue !', subtitle: 'Comment puis-je vous aider ?' }}
suggestions={['Qu'est-ce que GitBook ?', 'Comment commencer ?']}
actions={[
{
icon: 'circle-question',
label: 'Contact Support',
onClick: () => window.open('https://support.example.com', '_blank')
}
]}
tools={[/* ... */]}
visitor={{
token: 'your-jwt-token',
unsignedClaims: { userId: '123' }
}}
/>
</GitBookProvider>6
Contrôler l'intégration avec le hook useGitBook
import { useGitBook } from "@gitbook/embed/react";
function HelpButton() {
const gitbook = useGitBook();
const frameURL = gitbook.getFrameURL({ visitor: { token: '...' } });
const handleNavigate = () => {
const iframe = document.createElement('iframe');
iframe.src = frameURL;
const frame = gitbook.createFrame(iframe);
frame.navigateToPage('/getting-started');
frame.navigateToAssistant();
frame.postUserMessage('How do I get started?');
};
return <button onClick={handleNavigate}>Obtenir de l'aide</button>;
}7
Rendre l'intégration de manière conditionnelle
function App() {
const [showEmbed, setShowEmbed] = useState(false);
return (
<GitBookProvider siteURL="https://docs.company.com">
<button onClick={() => setShowEmbed(true)}>Obtenir de l'aide</button>
{showEmbed && <GitBookFrame />}
</GitBookProvider>
);
}8
Utilisation avec Next.js ou rendu côté serveur
import dynamic from "next/dynamic";
const GitBookProvider = dynamic(
() => import("@gitbook/embed/react").then((mod) => mod.GitBookProvider),
{ ssr: false }
);
const GitBookFrame = dynamic(
() => import("@gitbook/embed/react").then((mod) => mod.GitBookFrame),
{ ssr: false }
);Props & Configuration
Prop
Type
Requis
Par défaut
Description
Prop
Type
Requis
Par défaut
Description
Options de configuration
onglets
ongletsactions
actionsgreeting
greetingsuggestions
suggestionstools
toolsvisitor (Accès authentifié)
visitor (Accès authentifié)Pièges courants
Mis à jour
Ce contenu vous a-t-il été utile ?