From d50a3ed44e2edab2a7a661c43491c3aa42c57794 Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期四, 25 九月 2025 14:17:05 +0800 Subject: [PATCH] 用户行为分享基础埋点 --- pages/video/video-goods-detail.vue | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 53 insertions(+), 3 deletions(-) diff --git a/pages/video/video-goods-detail.vue b/pages/video/video-goods-detail.vue index 9d06578..d254c1d 100644 --- a/pages/video/video-goods-detail.vue +++ b/pages/video/video-goods-detail.vue @@ -29,8 +29,9 @@ <script> import {getGoodsDetail} from "@/api/video.js" - + import { buyBack } from "@/api/trade.js"; import '@/components/uview-components/uview-ui'; + import { getSessionId, userAction } from "@/api/userAction.js"; export default { computed: { totalMoney() { @@ -45,14 +46,53 @@ data() { return { videoId: '', - goodsList: [] + goodsList: [], + pageSessionNo:"", + actionParam:{ + sessionId:'', + actionType:"PAGE", + joinType:"SELF", + pageCode:"RECOMMEND_VIDEO_GOODS", + pageParams:"{}", + pageStatus:"JOIN", + pageType:"DETAIL" + } } + }, + 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) + } + }) }, onLoad(option) { this.videoId = option.videoId; + this.actionParam.pageParams = JSON.stringify(option) this.getGoodsList(); }, methods: { + selectGoods(goods,id){ + uni.navigateTo({ + url: `/pages/product/goods?id=${goods.id}&goodsId=${goods.goodsId}` + }) + }, // 鑾峰彇鍟嗗搧鍒楄〃 async getGoodsList() { getGoodsDetail(this.videoId).then(res => { @@ -61,7 +101,17 @@ }, // 鐢熸垚璁㈠崟-鏀粯 toPay() { - + const buyList = this.goodsList.map(goods => { + return { + skuId: goods.id, + num: goods.goodsNum + } + }) + buyBack(buyList).then(res => { + uni.navigateTo({ + url: "/pages/order/fillorder?way=CART" + }) + }) } } } -- Gitblit v1.8.0