API 参考
了解在以编程方式使用 Docs Embed 时可用的方法
Docs Embed 根据你的集成方式提供不同的 API。本文档涵盖所有集成方式中可用的全部方法。
方法对比
初始化
GitBook('init', options, frameOptions)
createGitBook(options)
<GitBookProvider siteURL="...">
颜色方案覆盖
GitBook('init', options, { colorScheme })
client.getFrameURL({ colorScheme })
<GitBookFrame colorScheme="..." />
获取 frame URL
❌(内部处理)
client.getFrameURL(options)
useGitBook().getFrameURL(options)
创建 frame 客户端
❌(内部处理)
client.createFrame(iframe)
useGitBook().createFrame(iframe)
显示/隐藏组件
GitBook('show') / GitBook('hide')
❌
❌
打开/关闭窗口
GitBook('open') / GitBook('close') / GitBook('toggle')
❌
❌
导航到页面
GitBook('navigateToPage', path)
frame.navigateToPage(path)
通过 frame 客户端
导航到助手
GitBook('navigateToAssistant')
frame.navigateToAssistant()
通过 frame 客户端
发送消息
GitBook('postUserMessage', message)
frame.postUserMessage(message)
通过 frame 客户端
清空聊天
GitBook('clearChat')
frame.clearChat()
通过 frame 客户端
配置
GitBook('configure', settings)
frame.configure(settings)
Props on <GitBookFrame>
事件监听器
❌
frame.on(event, listener)
通过 frame 客户端
卸载
GitBook('unload')
❌
❌
独立脚本 API
初始化
GitBook('init', options, frameOptions)
GitBook('init', options, frameOptions)使用站点 URL 和可选的已验证访问来初始化组件。
参数:
options:{ siteURL: string }- 你的 GitBook 文档站点 URLframeOptions:{ visitor?: { token?: string, unsignedClaims?: Record<string, unknown> }, colorScheme?: 'light' | 'dark' }(可选)- Frame 选项
示例:
当省略时, colorScheme 遵循 iframe 的 CSS color-scheme.
组件控制
显示组件
如果 GitBook 组件已被隐藏,则显示它。
示例:
隐藏组件
隐藏 GitBook 组件,但不卸载它。
示例:
打开窗口
打开 Docs Embed 窗口。
示例:
关闭窗口
关闭 Docs Embed 窗口。
示例:
切换窗口
切换 Docs Embed 窗口的打开或关闭状态。
示例:
卸载组件
将 GitBook 组件从你的网站中完全移除。
示例:
导航
GitBook('navigateToPage', path)
GitBook('navigateToPage', path)通过路径导航到 GitBook 文档中的特定页面。
参数:
path(string):你想要导航到的页面路径
示例:
GitBook('navigateToAssistant')
GitBook('navigateToAssistant')直接导航到助手选项卡。
示例:
聊天
GitBook('postUserMessage', message)
GitBook('postUserMessage', message)像用户输入一样向聊天发送一条消息。
参数:
message(string):要发送到聊天的消息
示例:
GitBook('clearChat')
GitBook('clearChat')清除当前聊天会话中的所有消息。
示例:
配置
GitBook('configure', settings)
GitBook('configure', settings)使用自定义选项配置嵌入。请参阅 配置部分 以了解可用选项。
示例:
NPM 包 API
客户端工厂
createGitBook(options)
createGitBook(options)创建一个 GitBook 客户端实例。
参数:
options:{ siteURL: string }- 你的 GitBook 文档站点 URL
返回: GitBookClient
示例:
client.getFrameURL(options)
client.getFrameURL(options)获取带可选已验证访问的 iframe URL。
参数:
options:{ visitor?: { token?: string, unsignedClaims?: Record<string, unknown> }, colorScheme?: 'light' | 'dark' }(可选)
返回: string
示例:
client.createFrame(iframe)
client.createFrame(iframe)创建一个 frame 客户端以与 iframe 通信。
参数:
iframe:HTMLIFrameElement- iframe 元素
返回: GitBookFrameClient
示例:
Frame 客户端方法
frame.navigateToPage(path)
frame.navigateToPage(path)导航到 docs 选项卡中的特定页面。
参数:
path:string- 页面路径
frame.navigateToAssistant()
frame.navigateToAssistant()切换到助手选项卡。
frame.postUserMessage(message)
frame.postUserMessage(message)向聊天发送一条消息。
参数:
message:string- 要发送的消息
frame.clearChat()
frame.clearChat()清除聊天历史。
frame.configure(settings)
frame.configure(settings)配置嵌入。请参阅 配置部分 以了解可用选项。
frame.on(event, listener)
frame.on(event, listener)注册事件监听器。
参数:
event:string- 事件名称listener:Function- 回调函数
返回: () => void - 取消订阅函数
示例:
React 组件 API
请参阅 React 集成指南 以了解组件 props 以及 useGitBook hook API。
GitBookFrame 支持 assistantName, closeButton, colorScheme="light" | "dark",以及 visitor 用于已验证访问的 prop。
useGitBook().getFrameURL() 接受与 NPM 包相同的 colorScheme 参数。
最后更新于
这有帮助吗?