功能标记
通过功能标记提供商将访客数据传递到你的文档中
在功能标志中使用自适应内容需要向你的应用程序添加代码。
目前,GitBook helper 仅支持基于 React 的设置。
GitBook 提供用于以下流行功能标记服务提供商的辅助函数和集成: LaunchDarkly 以及 Reflag.
这使你能够在用户阅读文档时读取他们在产品中可访问的功能标记。如果你需要为仅对特定人群可用的功能显示文档,这会很有用。
LaunchDarkly
LaunchDarkly 允许你通过以下方式将功能标记访问权限作为声明发送: launchdarkly-react-client-sdk 以及 GitBook 的 @gitbook/adaptive 包。
如果你已经在产品中使用 LaunchDarkly 功能标记,那么你很可能已经配置好了这个包。
要将这些功能标记作为声明传递给 GitBook,请按照以下步骤操作:
安装 LaunchDarkly 集成
要开始使用,你首先需要 安装 LaunchDarkly 集成 到你的 GitBook 站点中。
设置你的项目和访问密钥
将你的项目密钥和来自以下位置的服务访问令牌添加到: LaunchDarkly 设置 到该集成的配置中。
将 GitBook helper 安装并添加到你的应用程序中
在设置好 LaunchDarkly 集成后,你需要在应用程序中安装 GitBook 自适应内容 helper。
npm install @gitbook/adaptive配置你的应用程序
你需要使用 withLaunchDarkly helper 与 LaunchDarkly React SDK 一起使用,以将上下文传递给 GitBook。
import { render } from 'react-dom';
import { withLaunchDarkly } from '@gitbook/adaptive';
import { asyncWithLDProvider, useLDClient } from 'launchdarkly-react-client-sdk';
import MyApplication from './MyApplication';
function PassFeatureFlagsToGitBookSite() {
const ldClient = useLDClient();
React.useEffect(() => {
if (!ldClient) {
return;
}
return withLaunchDarkly(ldClient);
}, [ldClient]);
return null;
}
(async () => {
const LDProvider = await asyncWithLDProvider({
clientSideID: 'client-side-id-123abc',
context: {
kind: 'user',
key: 'user-key-123abc',
name: 'Sandy Smith',
email: 'sandy@example.com'
},
options: { /* ... */ }
});
render(
<LDProvider>
<PassFeatureFlagsToGitBookSite />
<MyApplication />
</LDProvider>,
document.getElementById('reactDiv'),
);
})();检查你的访客 schema
一笔 访客 schema 是你的声明能够在已发布站点中被读取所必需的。安装并配置 LaunchDarkly 集成应会自动为你设置访客 schema。
Reflag
Reflag 允许你通过以下方式将功能标记访问权限作为声明发送: @reflag/react-sdk 以及 GitBook 的 @gitbook/adaptive 包。
如果你已经在产品中使用 Reflag 功能标记,那么你很可能已经配置好了这个包。
要将这些功能标记作为声明传递给 GitBook,请按照以下步骤操作:
安装 Reflag 集成
要开始使用,你首先需要 安装 Reflag 集成 到你的 GitBook 站点中。
设置你的密钥
将来自以下位置的密钥添加到: Reflag 设置 到该集成的配置中。
将 GitBook helper 安装到你的应用程序中
在设置好 Reflag 集成后,你需要在应用程序中安装 GitBook 自适应内容 helper。
npm install @gitbook/adaptive配置你的应用程序
你需要使用 withReflag helper 与 Reflag React SDK 一起使用,以将上下文传递给 GitBook。
import { withReflag } from '@gitbook/adaptive';
import { ReflagProvider, useClient } from '@reflag/react-sdk';
import MyApplication from './MyApplication';
function PassFeatureFlagsToGitBookSite() {
const client = useClient();
React.useEffect(() => {
if (!client) {
return;
}
return withReflag(client);
}, [client]);
return null;
}
export function Application() {
const currentUser = useLoggedInUser();
const appConfig = useAppConfig();
return (
<ReflagProvider
publishableKey={appConfig.reflagCom.publishableKey}
user={{
id: currentUser.uid,
email: currentUser.email ?? undefined,
name: currentUser.displayName ?? '',
}}
company={{
id: currentUser.company.id,
}}
>
<PassFeatureFlagsToGitBookSite />
<MyApplication />
</ReflagProvider>
);
}检查你的访客 schema
一笔 访客 schema 是你的声明能够在已发布站点中被读取所必需的。安装并配置 Reflag 集成应会自动为你设置访客 schema。
最后更新于
这有帮助吗?