React
事前構築されたReactコンポーネントを使ってReactアプリにDocs Embedを追加する
手順
3
4
GitBookFrameコンポーネントを追加する
function App() {
return (
<GitBookProvider siteURL="https://docs.company.com">
<div className="app">
<YourAppContent />
<GitBookFrame
visitor={{
token: 'your-jwt-token', // 任意: Adaptive Content または認証アクセス用
unsignedClaims: { userId: '123' } // オプション:動的式のためのカスタムクレーム
}}
/>
</div>
</GitBookProvider>
);
}5
埋め込みをカスタマイズする
<GitBookProvider siteURL="https://docs.company.com">
<GitBookFrame
tabs={['assistant', 'docs']}
greeting={{ title: 'Welcome!', subtitle: 'How can I help?' }}
suggestions={['What is GitBook?', 'How do I get started?']}
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
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}>Get Help</button>;
}7
8
Next.jsまたはサーバーサイドレンダリングでの使用
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 }
);プロップと設定
プロップ
を入力してから
必須
デフォルト
説明
プロップ
を入力してから
必須
デフォルト
説明
設定オプション
tabs
tabsactions
actionsgreeting
greetingsuggestions
suggestionstools
toolsvisitor (認証付きアクセス)
visitor (認証付きアクセス)よくある落とし穴
最終更新
役に立ちましたか?