功能开关
通过功能开关提供者将访问者数据传入您的文档
LaunchDarkly
1
2
3
npm install @gitbook/adaptive4
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
6
Reflag
1
2
3
npm install @gitbook/adaptive4
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={{
);
}5
6
最后更新于
这有帮助吗?