React Client SDK
Background
React Client SDK повторно использует ряд концепций javaScript.
React Client включает в себя:
- параметры инициализации имеют тот же набор параметров, но специфичными для react.
- hooks: useEffect, useState
Инициализация SDK
Вы можете установить модуль Sigma через npm или yarn.
- NPM
- Yarn
npm install expf-sigma.js
yarn add expf-sigma.js
Пример
Создайте hook, который будет содержать настройки sdk и результаты экспериментов, фича флагов.
./src/hooks/useSigma.js
import Sigma from "expf-sigma.js";
import { useEffect, useState } from 'react';
export function useSigma () {
const [sigma, setSigmaState] = useState({});
useEffect(() => {
const sigmaData = async () => {
const sigma = new Sigma();
const token = <TOKEN>;
sigma.init({
token,
userData: {
email: '1ex@mail.ru',
},
});
const browserName = await sigma.checkFlag('browser_name');
const buttonColor = await sigma.checkFlag('button_color');
const exParam = await sigma.getExperiment('param').then((res) => res.getParamValue('param_name'));
setSigmaState({
browserName,
buttonColor,
exParam
});
}
sigmaData();
}, []);
return [sigma];
}
В компонентах подключить результат, например:
./src/components/Title.js
import { useSigma } from "../hooks/useSigma";
export default function Title() {
const [sigma] = useSigma();
return (
<h1>{sigma.browserName}</h1>
);
}