gtag 추가

This commit is contained in:
2025-07-03 08:36:26 +09:00
parent 01aa5dfe66
commit 73b6439702
23 changed files with 414 additions and 17 deletions
+26 -3
View File
@@ -190,6 +190,7 @@
</template>
<script setup>
import { useGtag } from 'vue-gtag-next';
import { ref, reactive, computed, onMounted, watch } from 'vue';
import clubService from '@/services/clubService';
import { useClubStore } from '@/stores/clubStore';
@@ -368,7 +369,8 @@ const loadMembers = async () => {
// 새 회원 추가 다이얼로그 열기
const openNewMemberDialog = () => {
member.value = {
dialogMode.value = 'new';
member.value = {
name: '',
gender: null,
memberTypeObj: null,
@@ -376,7 +378,6 @@ const openNewMemberDialog = () => {
email: '',
handicap: 0
};
dialogMode.value = 'new';
memberDialog.value = true;
};
@@ -392,6 +393,8 @@ watch(() => member.value.gender, (newGender) => {
});
// 회원 수정 다이얼로그 열기
const gtag = useGtag();
const editMember = (data) => {
member.value = {
...data
@@ -410,12 +413,18 @@ const hideDialog = () => {
const saveMember = async () => {
try {
const memberData = { ...member.value };
const isNew = dialogMode.value === 'new';
const response = isNew
? await clubService.addClubMember(clubId.value, memberData)
: await clubService.updateClubMember(clubId.value, memberData.id, memberData);
// Google Analytics 이벤트 추적 - 회원 저장
gtag.event(isNew ? 'add_member' : 'edit_member', {
'event_category': '회원관리',
'event_label': isNew ? '새 회원 추가' : '회원 정보 수정',
'value': 1
});
toast.add({
severity: 'success',
summary: '성공',
@@ -444,6 +453,12 @@ const deleteMember = async () => {
try {
await clubService.deleteClubMember(clubId.value, selectedMember.value.id);
deleteDialog.value = false;
// Google Analytics 이벤트 추적 - 회원 삭제
gtag.event('delete_member', {
'event_category': '회원관리',
'event_label': '회원 삭제',
'value': 1
});
toast.add({ severity: 'success', summary: '성공', detail: '회원이 삭제되었습니다.', life: 3000 });
await loadMembers();
} catch (error) {
@@ -453,6 +468,14 @@ const deleteMember = async () => {
};
onMounted(() => {
// Google Analytics 페이지뷰 추적
gtag.pageview({
page_title: '회원 관리',
page_path: window.location.pathname,
page_location: window.location.href
});
});
</script>
<style scoped>