For the complete documentation index, see llms.txt. This page is also available as Markdown.

React

Hackle React SDK는 React 16.8 이상 버전을 지원합니다.

React SDK는 JavaScript SDK 를 기반으로 동작합니다.

의존성 추가

npm install --save @hackler/react-sdk
yarn add @hackler/react-sdk

SDK 초기화

SDK를 사용하기 위해서 반드시 HackleReactSDKClient 를 초기화 해야 합니다.

  • HackleReactSDKClient는 SDK의 기능을 사용하기 위한 메소드들을 제공하는 클래스입니다.

  • SDK 키는 핵클 서비스의 대시보드 안에 위치한 SDK 연동 정보 에서 확인하실 수 있습니다.

어플리케이션 초기화 단계에 핵클 서버와 데이터 동기화를 위한 통신을 진행합니다. 일반적으로 이 시간은 수 밀리 초에 불과합니다. 동기화가 완료되면 즉시 렌더링이 진행됩니다.

import { createInstance, HackleProvider } from "@hackler/react-sdk";

// YOUR_BROWSER_SDK_KEY 자리에 SDK 키를 넣습니다.
const hackleClient = createInstance("YOUR_BROWSER_SDK_KEY")

ReactDOM.render(
  <HackleProvider hackleClient={hackleClient}>
    <YourApp />
  </HackleProvider>,
  document.getElementById('root')
);

// GTM 연동 시 추가 script
window.hackleClient = hackleClient
import {createInstance, HackleProvider} from "@hackler/react-sdk";

// YOUR_BROWSER_SDK_KEY 자리에 SDK 키를 넣습니다.
const hackleClient = createInstance("YOUR_BROWSER_SDK_KEY")

function MyApp({Component, pageProps}) {
  return (
    <HackleProvider hackleClient={hackleClient} supportSSR>
      <Component {...pageProps} />
    </HackleProvider>
  )
}

export default MyApp

초기화 설정정보

설정정보를 포함하여 SDK를 초기화 할 수 있습니다.

모든 설정옵션

설정
기능
기본값
지원 버전

debug

모든 기능에 대한 로그를 콘솔에 출력합니다.

false

1.0.0+

pollingIntervalMillis

대시보드에서 설정한 정보를 주기적으로 업데이트 할 수 있습니다. 최솟값 : 60000 (60초)

-1

11.1.0+

exposureEventDedupIntervalMillis

동일한 사용자가 연속으로 발생시킨 동일한 A/B 테스트, 기능플래그 분배결과에 대한 노출 이벤트를 제거합니다. 최솟값: 1000 (1초) 최댓값: 3600000 (1시간)

60000(1분 / 11.23.0 버전 이상)

-1(중복제거 하지 않음 / 11.23.0 버전 미만)

11.1.0+

sessionTimeoutMillis (deprecated)

세션만료 시간을 설정합니다. sessionPolicy를 사용해 주세요.

1800000 (30분)

11.8.0+

devTool

사용자 탐색을 사용할 수 있도록 합니다.

undefined

11.13.0+

autoOpenDevTool

사용자 탐색 버튼이 자동으로 나타나도록 하는 옵션입니다.

false

11.13.0+

user

초기화 시점에 사용자를 주입합니다.

undefined

11.22.3+

sessionPolicy

세션 유지 조건과 만료 조건을 설정합니다.

ALWAYS_NEW_SESSION ,

1800000

11.54.0+

optOutTracking

옵트아웃 활성화 여부.

false

11.54.0+

evaluationMode

분배 방식을 설정합니다.

local

12.0.0+

세션 정책 설정

세션 정책을 설정하여 세션의 유지 조건과 만료 조건을 제어할 수 있습니다.

초기화 시 사용자 주입

config에 user를 설정한 경우 유저 정보를 포함하여 SDK를 초기화 할 수 있습니다.

  • 유저 정보를 포함하지 않으면 쿠키에 저장된 유저 정보를 사용합니다.

  • 유저 정보를 포함하는 경우 쿠키에 저장된 유저 정보는 사용하지 않습니다.

  • 쿠키에 저장된 유저 정보가 없는 경우 Hackle Device ID를 device id로 가지고 유저를 사용합니다.

유저 정보는 SDK 초기화 이후에도 유저 정보 설정 함수를 통해 자유롭게 수정 할 수 있습니다.

대시보드 설정 정보 갱신

대시보드 설정 정보를 명시적으로 갱신 할 수 있습니다.

React SDK 12.0.0 부터 fetch() 완료 후 훅(useVariation 등)이 최신 설정 정보 기준으로 다시 평가됩니다.

마지막 업데이트