功能标记
通过功能标记提供商将访客数据传入您的文档。
使用带功能标志的自适应内容需要向您的应用添加代码。
目前,GitBook 助手仅支持基于 React 的设置。
GitBook 为流行的功能标志服务提供商提供了帮助函数和集成,例如 LaunchDarkly 和 Reflag.
这允许您在用户阅读文档时读取他们在产品中可访问的功能标志。如果需要向仅对特定用户组可用的功能显示文档,这非常有用。
LaunchDarkly
LaunchDarkly 允许您通过 launchdarkly-react-client-sdk
和 GitBook 的 @gitbook/adaptive
包将功能标志访问作为声明发送。
如果您已经在产品中使用 LaunchDarkly 功能标志,很可能您已经配置了此包。
要将这些功能标志作为声明传递给 GitBook,请执行以下步骤:
安装 LaunchDarkly 集成
要开始,您首先需要 将 LaunchDarkly 集成安装 到您的 GitBook 站点中。
设置项目和访问密钥
将您的项目密钥和服务访问令牌从您的 LaunchDarkly 设置 添加到该集成的配置中。
在您的应用中安装并添加 GitBook 助手
设置 LaunchDarkly 集成后,您需要在应用中安装 GitBook 自适应内容助手。
npm install @gitbook/adaptive
配置您的应用
您需要使用 withLaunchDarkly
辅助程序与 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'),
);
})();
检查您的访客模式(visitor schema)
A 访客模式 是必需的,以便您的声明能够在已发布的站点中被读取。安装和配置 LaunchDarkly 集成应会自动为您设置访客模式。
Reflag
Reflag 允许您通过 @reflag/react-sdk
和 GitBook 的 @gitbook/adaptive
包将功能标志访问作为声明发送。
将功能标志访问作为声明发送。
要将这些功能标志作为声明传递给 GitBook,请执行以下步骤:
如果您已经在产品中使用 Reflag 功能标志,很可能您已经配置了此包。
要开始,您首先需要 安装 Reflag 集成 到您的 GitBook 站点中。
安装 Reflag 集成
设置您的密钥(secret key) 将您的密钥从您的 添加到该集成的配置中。
Reflag 设置
添加到集成配置中。
npm install @gitbook/adaptive
配置您的应用
您需要使用 将 GitBook 助手安装到您的应用
设置 Reflag 集成后,您需要在应用中安装 GitBook 自适应内容助手。
withReflag
辅助程序与 Reflag React SDK 一起将上下文传递给 GitBook。
import MyApplication from './MyApplication';
function PassFeatureFlagsToGitBookSite() {
import { withReflag } from '@gitbook/adaptive';
React.useEffect(() => {
import { ReflagProvider, useClient } from '@reflag/react-sdk';
return;
}
const client = useClient();
if (!client) {
return null;
}
return withReflag(client);
}, [client]);
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 ?? '',
}}
>
<PassFeatureFlagsToGitBookSite />
<MyApplication />
company={{
);
}
检查您的访客模式(visitor schema)
A 访客模式 id: currentUser.company.id,
最后更新于
这有帮助吗?