功能标志

通过功能标志提供者将访问者数据传入您的文档。

GitBook 为流行的功能标记服务提供商(如)提供辅助函数和集成, LaunchDarkly 并且 Bucket.

这允许您在用户阅读文档时读取他们在产品中可访问的功能标记。如果您需要为仅对特定用户群体可用的功能显示文档,这很有用。

LaunchDarkly

LaunchDarkly 允许您通过将功能标记访问作为声明发送,使用 launchdarkly-react-client-sdk 和 GitBook 的 @gitbook/adaptive 包。

如果您已经在产品中使用 LaunchDarkly 功能标记,很可能您已经配置了此包。

要将这些功能标记作为声明传递给 GitBook,请按以下步骤操作:

1

安装 LaunchDarkly 集成

要开始,您首先需要 将 LaunchDarkly 集成安装到 您的 GitBook 站点中。

2

设置您的项目和访问密钥

将您的项目密钥和服务访问令牌从您的 LaunchDarkly 设置 添加到集成的配置中。

3

在您的应用中安装并添加 GitBook 帮助程序

在设置 LaunchDarkly 集成之后,您需要在应用中安装 GitBook 自适应内容帮助程序。

npm install @gitbook/adaptive
4

配置您的应用

您需要使用 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'),
    );
})();
5

检查您的访客模式(visitor schema)

一项 访客模式(visitor schema) 是必需的,以便您的声明能够在发布站点中被读取。安装和配置 LaunchDarkly 集成应会自动为您设置访客模式。

6

为您的内容进行个性化

在设置访客模式后,您就可以根据访问您站点的用户所拥有的功能标记来定制文档体验。

LaunchDarkly 中可用的任何功能标记值将作为访客模式的一部分在 unsigned.launchdarkly.flags 对象下公开。阅读有关未签名声明的更多信息, 这里.

前往 自适应您的内容 以了解更多关于为用户个性化文档的信息。

Bucket

Bucket 允许您通过将功能标记访问作为声明发送,使用 @bucketco/react-sdk 和 GitBook 的 @gitbook/adaptive 包。

如果您已经在产品中使用 Bucket 功能标记,很可能您已经配置了此包。

要将这些功能标记作为声明传递给 GitBook,请按以下步骤操作:

1

安装 Bucket 集成

要开始,您首先需要 安装 Bucket 集成 您的 GitBook 站点中。

2

设置您的密钥(secret key)

将您在 Bucket 设置 添加到集成的配置中。

3

中的密钥添加到配置中,

在设置 Bucket 集成之后,您需要在应用中安装 GitBook 自适应内容帮助程序。

npm install @gitbook/adaptive
4

配置您的应用

您需要使用 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>
    );
}
5

检查您的访客模式(visitor schema)

一项 访客模式(visitor schema) 是必需的,以便您的声明能够在发布站点中被读取。安装和配置 Bucket 集成应会自动为您设置访客模式。

6

为您的内容进行个性化

在设置访客模式后,您就可以根据访问您站点的用户所拥有的功能标记来定制文档体验。

Bucket 中可用的任何功能标记值将作为访客模式的一部分在 unsigned.bucket.flags 对象下公开。阅读有关未签名声明的更多信息, 这里.

前往 自适应您的内容 以了解更多关于为用户个性化文档的信息。

下公开。功能标记值在客户端进行评估,因此请避免使用此方法传递敏感或与安全相关的重要数据。

最后更新于

这有帮助吗?