Skip to main content

React Client SDK

Background

React Client SDK повторно использует ряд концепций javaScript.

React Client включает в себя:

  • параметры инициализации имеют тот же набор параметров, но специфичными для react.
  • hooks: useEffect, useState

Инициализация SDK

Вы можете установить модуль Sigma через npm или yarn.

npm install 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>
);
}