我正在关注 这个 PostHog 教程,它涉及将我的整个应用程序包装在
PostHogProvider
中,其中有一个 use client
指令。这是否会有效地将我的整个应用程序转变为客户端应用程序并选择我退出 Next.js 服务器组件?
// app/providers.js
'use client'
import posthog from 'posthog-js'
import { PostHogProvider } from 'posthog-js/react'
export default function PHProvider({ children, bootstrapData }) {
if (typeof window !== 'undefined') {
posthog.init("<ph_project_api_key>", {
api_host: "https://us.i.posthog.com",
bootstrap: bootstrapData
})
}
return <PostHogProvider client={posthog}>{children}</PostHogProvider>
}
根据 Next.js 文档并使用应用程序路由器,在客户端组件内呈现的每个组件将自动成为客户端包的一部分。你在这里看看这一点: https://nextjs.org/docs/app/building-your-application/rendering/client-components#using-client-components-in-nextjs