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