Appearance
ContactsViralSuccessEvent
연락처 공유 모듈이 정상적으로 종료됐을 때 전달되는 이벤트 객체예요. 종료 이유와 함께 리워드 상태 및 남은 친구 수 등 관련 정보를 제공해요.
시그니처
ts
type ContactsViralSuccessEvent = {
type: 'close';
data: {
closeReason: 'clickBackButton' | 'noReward';
sentRewardAmount?: number;
sendableRewardsCount?: number;
sentRewardsCount: number;
rewardUnit?: string;
};
};
프로퍼티
- type필수
이벤트의 타입이에요. 공유 모듈이 종료되었을 때
close
값을 갖고 돌아와요. - data필수
모듈 종료와 관련된 세부 정보를 담고 있어요.
- data.closeReason필수
모듈이 종료된 이유예요.
clickBackButton
: 사용자가 뒤로 가기 버튼을 눌러 종료한 경우noReward
: 받을 수 있는 리워드가 없어서 종료된 경우 - data.sentRewardAmount
사용자가 받은 전체 리워드 수량이에요. 선택적으로 전달돼요.
- data.sendableRewardsCount
아직 공유할 수 있는 친구 수예요. 선택적으로 전달돼요.
- data.sentRewardsCount필수
사용자가 공유를 완료한 친구 수예요.
- data.rewardUnit
리워드의 단위예요. 앱인토스 콘솔에 설정된
하트
,보석
같은 이름이 들어가요. 선택적으로 전달돼요.
- data.closeReason필수
예제
모듈 종료 이벤트 처리하기
ts
contactsViral({
options: { moduleId: 'your-module-id' },
onEvent: (event) => {
if (event.type === 'close') {
console.log('종료 사유:', event.data.closeReason);
console.log('공유 완료한 친구 수:', event.data.sentRewardsCount);
}
},
onError: (error) => {
console.error('에러 발생:', error);
},
});