React기준(Next.js 환경)으로 사용법이 작성되었습니다.

1. 테스트 그룹 분배
- 어떤 테스트 그룹(A,B,C)에서 테스트가 진행되었는지 핵클에 집계가 됩니다
2. 기능 플래그
- 사용자에 대해 특정 기능의 출시여부를 핵클에 집계가 된다
3. 사용자 이벤트 전송
- 사용자가 어떤 행동을 했는지 핵클에 집계가 된다
4. 데이터 세부 분석
- 사용자에 대해 분석 기준값을 수집하여 심도 있는 분석이 가능하다
5. 타겟팅
- 특정 유저에게만 A/B 테스트에 참여할 수 있게 한다
yarn add @hackler/react-sdk
- `HackleReactSDKClient`를 SDK키로 초기화하세요. (디버그 모드 ON)
GTM을 사용하여 연동을 진행할 경우, Hackle SDK 초기화를 하고, SDK를 GTM 에서 접근할 수 있도록 window에 추가 선언이 필요합니다.
import {createInstance, HackleProvider} from "@hackler/react-sdk";
// 설정정보를 포함하여 초기화
const config = {
debug: true
};
// 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
hackleClient.fetch();userId를 넘길 수도 있고, 유저에 대한 속성 데이터를 넘길수도 있다
*속성 데이터 예시 : 나이 : 20대이다, 성별: '여' 이다.
1) userId 설정 방법
- hackleClient.setUserId(userId);
- 로그인 시 한번만 설정하면 됩니다.
- 이미 로그인이 되어있는 사용자의 경우에는 로그인한 정보를 가지고 오는 시점에 호출하면 됩니다
2) 사용자 속성 설정 방법
import { PropertyOperationsBuilder } from "@hackler/react-sdk"
const operations = new PropertyOperationsBuilder()
.set("age", 42)
.set("grade", "GOLD")
.build();
hackleClient.updateUserProperties(operations);
로그아웃시, 아래의 로직을 실행하여 데이터 수집을 막을 것
- 사용자 ID
- 사용자 속성
hackleClient.resetUser();
// 이벤트 수집
hackleClient.track('purchase')
// 이벤트를 속성과 함께 수집
const event = {
key: "purchase",
properties: {
amount: 4200,
pay_method: "CARD",
is_discount: false,
product_ids: [42, 43]
}
}
hackleClient.track(event);