개발자 가이드
사용자 가이드개발자 가이드API 가이드🏠
한국어
한국어
  • 홈
  • 공통
    • 통합 ID 연동 시나리오
    • 상수
    • FAQ
  • 플랫폼 별 가이드
    • Android
      • 연동하기
      • 이벤트
      • 유저 식별 정보 설정
      • 유저 프로필 설정
      • 액션
        • 푸시
        • 인앱메시지
        • 알림톡
        • 문자
      • 개인 정보 보호
        • 개인 정보 보호 지원
        • Google Play의 데이터 공개 요건 준비
      • 릴리즈 노트
    • iOS
      • 연동하기
      • 이벤트
      • 유저 식별 정보 설정
      • 유저 프로필 설정
      • 액션
        • 푸시
        • 인앱메시지
        • 알림톡
        • 문자
      • 릴리즈 노트
    • Hybrid App
      • 연동하기
    • Web
      • 연동하기
      • 이벤트
      • 유저 식별 정보 설정
      • 유저 프로필 설정
      • 액션
        • 인앱메시지
        • 알림톡
        • 문자
      • 고급 사용 사례
        • 부가 설정
      • 릴리즈 노트
Powered by GitBook
On this page
  1. 플랫폼 별 가이드
  2. Web
  3. 고급 사용 사례

부가 설정

onInitialized 함수

  • onInitialized 함수는 SDK가 Init이 완료된 후에 동작해야 하는 로직이 있는 경우에 사용합니다.

Dfinery.onInitialized(() => {
  // init 후 동작 로직들
});
  • 이벤트 함수 호출 후에 바로 페이지 이동로직이 있는 경우 함수가 끝까지 진행되기 전에 페이지 이동이 되어 버려서 이벤트 수집을 못할 수도 있습니다. logEvent는 비동기 함수로 Promise를 리턴하기때문에 다음과 같이 코드를 진행하는 것을 추천합니다.

// init 이후에 함수 실행
window.Dfinery.onInitialized(() => {
  Promise.race([
    window.Dfinery.logEvent("EVENT_NAME"),
    new Promise((resolve, reject) => {
      setTimeout(() => reject("Timed out"), 2000); // 2초동안 성공못하면 실패
    }),
  ])
    .catch((error) => {
      //
    })
    .then(() => {
      // 이동
      window.location.href = "https://www.dfinery.io/crm";
    });
});

타임아웃을 조절하여 SDK 오류 발생으로 인한 영향을 줄이세요. 타임아웃 시간과 클라이언트의 네트워크 속도등의 영향으로 상황에 따라 수집이 안될수도 있습니다.

Previous고급 사용 사례Next릴리즈 노트

Last updated 2 months ago