Geistdocs 提供者

处理通知、搜索和分析的根提供者组件

GeistdocsProvider 位于应用根部,负责连接主题、搜索、AI chat、通知和可选分析功能。

它的作用

该提供者为您处理以下主要事项:

  1. Toast 通知:提供全局通知系统,用于向用户反馈。
  2. 分析:当本地 adapter 引入 Vercel Analytics 和 Speed Insights 时,将它们连接到站点。
  3. 搜索:配置搜索对话框并连接到搜索 API。
  4. Ask AI:提供 chat 侧边栏和页面操作所需的客户端状态。

用法

确保在根布局中使用该提供者包裹您的应用:

app/layout.tsx
import { GeistdocsProvider } from "@/components/geistdocs/provider";

const Layout = ({ children }: LayoutProps) => (
  <html lang="en">
    <body>
      <GeistdocsProvider>
        <Navbar />
        {children}
      </GeistdocsProvider>
    </body>
  </html>
);

就这些。提供者会自动处理所有事项。

AI 侧边栏

当用户在桌面端打开 AI 聊天时,提供者会自动添加内边距,以防止内容被侧边栏遮挡。在移动端,聊天会以抽屉的形式打开,因此无需内边距。

您无需执行任何操作 —— 提供者会自动检测屏幕尺寸和聊天状态。

Toast 通知

该提供者包含一个全局的 toast 通知系统。可在应用的任何位置使用:

page.tsx
import { toast } from "sonner";

toast.success("Changes saved");
toast.error("Something went wrong");

分析

自动包含 Vercel Analytics,并跟踪:

  • 页面浏览
  • Web Vitals
  • 用户交互
  • 性能指标

无需配置 —— 部署到 Vercel 后会自动生效。