From 381fcd9130a37f83da110cec1324b306c58a5e77 Mon Sep 17 00:00:00 2001 From: nisen Date: Thu, 16 Nov 2023 17:31:19 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=87=E7=AB=A0=E8=AE=A1=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E6=9C=80=E5=A4=9A=E4=B8=89=E5=8D=81=E5=88=86=E9=92=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/resource/articeDetail.vue | 58 ++++++++++++++++++++++++++++----- 1 file changed, 49 insertions(+), 9 deletions(-) diff --git a/pages/resource/articeDetail.vue b/pages/resource/articeDetail.vue index e059597..8919362 100644 --- a/pages/resource/articeDetail.vue +++ b/pages/resource/articeDetail.vue @@ -49,7 +49,11 @@ // 字符串的形式 p: 'word-break:break-all;font-size: 28upx;letter-spacing:1rpx; line-height: 1.6;margin-bottom:25px', span: 'word-break:break-all;font-size: 28upx;letter-spacing:1rpx; line-height: 1.6' - } + }, + secondTime: 15,//默认时长 + cumulativeDuration: 0, + setTime: null, + defaultMaxTime: 1800,//最大时长 } }, @@ -74,15 +78,22 @@ source:"h5", } apiStat.sendEvent(event); + this.sendEventData() // this.$store.dispatch("userTrigger", event); - this.setTime = setTimeout(()=>{ - event.key = 'ReadArticle'; - event.title = "阅读文章"; - event.parameters='second:60';//增加60秒的学习时长 - event.content = "阅读了文章" - apiStat.sendEvent(event); - // $this.$store.dispatch("userTrigger", event); - },61000);//1分钟后记录 + // this.setTime = setTimeout(()=>{ + // event.key = 'ReadArticle'; + // event.title = "阅读文章"; + // event.parameters='second:60';//增加60秒的学习时长 + // event.content = "阅读了文章" + // apiStat.sendEvent(event); + // // $this.$store.dispatch("userTrigger", event); + // },61000);//1分钟后记录 + + }, + destroyed() { + if(this.setTime){ + clearTimeout(this.setTime); + } }, onReachBottom(){ this.getDetail() @@ -91,6 +102,35 @@ ...mapGetters(['userInfo']) }, methods: { + // 发送计时 + sendEventData(){ + let event = { + key: "ReadArticle",//后台的事件key 发布文章且审核通过 + title: "阅读文章",//事件的标题 + parameters:"second:" + this.secondTime,//用户自定义参数 name:value,name:value + content: "阅读了文章",//事件的内容 + source:'page', + objId: this.id,//关联的id + objType: "2",//关联的类型 + objInfo: this.detail.title, + aid: this.userInfo.aid, //当前登录人的id + aname: this.userInfo.name,//当前人的姓名 + status: 1 ,//状态,直接写1 + source:"h5", + } + this.setTime = setTimeout(()=>{ + this.cumulativeDuration += this.secondTime + if(this.cumulativeDuration <= this.defaultMaxTime){ + apiStat.sendEvent(event); + this.secondTime = 60 + this.sendEventData() + }else{ + this.cumulativeDuration = 0 + clearTimeout(this.setTime); + this.setTime = null + } + },this.secondTime * 1000);//15秒记录一次之后1分钟后记录 + }, getDetail(){ uni.showLoading({title:'加载中...'}); let $this=this;