From 89efee9a2e20fc04b4537d859917b47cf68a814c Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期五, 26 九月 2025 18:28:40 +0800
Subject: [PATCH] 用户行为分享基础埋点
---
pages/prize/PrizeDetail/PrizeDetail.vue | 39 ++++++++++++++++++++++++++++++++++++++-
1 files changed, 38 insertions(+), 1 deletions(-)
diff --git a/pages/prize/PrizeDetail/PrizeDetail.vue b/pages/prize/PrizeDetail/PrizeDetail.vue
index 6e2bba5..0272909 100644
--- a/pages/prize/PrizeDetail/PrizeDetail.vue
+++ b/pages/prize/PrizeDetail/PrizeDetail.vue
@@ -148,6 +148,8 @@
</template>
<script>
import bgConfig from '@/pages/prize/PrizeDetail/prize-bgConfig.js'
+ import { getSessionId, userAction } from "@/api/userAction.js";
+
import {
prizeInfo,
prizeNum,
@@ -212,7 +214,17 @@
shareTimelineAttempt: false,
activityCover: '',
activityName: '',
- couponId: ''
+ couponId: '',
+ pageSessionNo:"",
+ actionParam:{
+ sessionId:'',
+ actionType:"PAGE",
+ joinType:"SELF",
+ pageCode:"PRIZE_DETAIL",
+ pageParams:"{}",
+ pageStatus:"JOIN",
+ pageType:"DETAIL"
+ }
};
},
computed: {
@@ -221,7 +233,32 @@
return [...this.originalWinners]
}
},
+ onUnload() {
+ let param = this.actionParam;
+ if (this.sendOnShow)return
+ param.pageStatus = "LEAVE"
+ userAction(param)
+ },
+ onHide() {
+ this.startHidenTime = Date.now()
+ let param = this.actionParam;
+ this.sendOnShow = true;
+ param.pageStatus = "LEAVE"
+ userAction(param)
+ },
+ onShow() {
+ getSessionId().then(res=>{
+ this.pageSessionNo = res.data.data
+ if(this.pageSessionNo){
+ let param = this.actionParam;
+ param.sessionId = this.pageSessionNo
+ userAction(param)
+ }
+ })
+ },
async onLoad(option) {
+ this.actionParam.pageParams = JSON.stringify(option)
+
const pages = getCurrentPages()
console.log('================pages ', pages)
this.activityId = option.id
--
Gitblit v1.8.0