API 参考

了解以编程方式使用 Docs Embed 时可用的方法

Docs Embed 根据你的集成方式提供不同的 API。本文档涵盖所有集成方式中可用的全部方法。

方法对比

方法
独立脚本
NPM 包
React 组件

初始化

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)

使用站点 URL 和可选的已验证访问来初始化组件。

参数:

  • options: { siteURL: string } - 你的 GitBook 文档站点 URL

  • frameOptions: { 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 文档中的特定页面。

参数:

  • path (string):你想要导航到的页面路径

示例:

GitBook('navigateToAssistant')

直接导航到助手选项卡。

示例:

聊天

GitBook('postUserMessage', message)

像用户输入一样向聊天发送一条消息。

参数:

  • message (string):要发送到聊天的消息

示例:

GitBook('clearChat')

清除当前聊天会话中的所有消息。

示例:

配置

GitBook('configure', settings)

使用自定义选项配置嵌入。请参阅 配置部分 以了解可用选项。

示例:

NPM 包 API

客户端工厂

createGitBook(options)

创建一个 GitBook 客户端实例。

参数:

  • options: { siteURL: string } - 你的 GitBook 文档站点 URL

返回: GitBookClient

示例:

client.getFrameURL(options)

获取带可选已验证访问的 iframe URL。

参数:

  • options: { visitor?: { token?: string, unsignedClaims?: Record<string, unknown> }, colorScheme?: 'light' | 'dark' } (可选)

返回: string

示例:

client.createFrame(iframe)

创建一个 frame 客户端以与 iframe 通信。

参数:

  • iframe: HTMLIFrameElement - iframe 元素

返回: GitBookFrameClient

示例:

Frame 客户端方法

frame.navigateToPage(path)

导航到 docs 选项卡中的特定页面。

参数:

  • path: string - 页面路径

frame.navigateToAssistant()

切换到助手选项卡。

frame.postUserMessage(message)

向聊天发送一条消息。

参数:

  • message: string - 要发送的消息

frame.clearChat()

清除聊天历史。

frame.configure(settings)

配置嵌入。请参阅 配置部分 以了解可用选项。

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 参数。

最后更新于

这有帮助吗?