From 0c83611409654cfc53c64345ba60b7e1e5fcc5b7 Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期一, 01 九月 2025 14:27:22 +0800 Subject: [PATCH] 调整弹窗样式 --- pages/tabbar/index/home.vue | 115 ++++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 100 insertions(+), 15 deletions(-) diff --git a/pages/tabbar/index/home.vue b/pages/tabbar/index/home.vue index 0a5d6c2..56c15b5 100644 --- a/pages/tabbar/index/home.vue +++ b/pages/tabbar/index/home.vue @@ -202,11 +202,13 @@ </view> <view v-else class="comment-item" v-for="(comment, index) in comments" :key="comment.id"> - <view style="display: flex;"> + <view style="display: flex;" > <image class="comment-avatar" :src="comment.userAvatar || '/static/default-avatar.png'"></image> <view class="comment-content"> - <text class="nickname">{{comment.userNickname}} <text v-if="userId===comment.userId">(鎴�)</text> </text> - <text class="content">{{comment.commentContent}}</text> + <view @click="replyClick(comment)"> + <text class="nickname">{{comment.userNickname}} <text v-if="userId===comment.userId">(鎴�)</text> </text> + <text class="content">{{comment.commentContent}}</text> + </view> <view style="position: relative;"> <text class="time">{{formatTime(comment.createTime)}}</text> <text @click="openReply(comment)" class="reply-btu time">鍥炲</text> @@ -218,7 +220,7 @@ <!-- 鍥炲鍒楄〃 --> <view class="reply-list" v-if="comment.replies && comment.replies.length > 0"> <view class="reply-item" v-for="(reply, replyIndex) in comment.replies" :key="reply.id"> - <view class="reply-content"> + <view class="reply-content" @click="replyClick(reply)"> <view style="display: flex;"> <image class="comment-reply-avatar" :src="reply.replyUserAvatar || '/static/default-avatar.png'"></image> <text class="nickname">{{reply.userNickname}}<text v-if="userId===comment.userId">(鎴�)</text></text> @@ -261,6 +263,16 @@ <custom-tabbar bgColor="#333333" selected="index" selectedTextColor="#ffffff"></custom-tabbar> + + <ActivityPopup + :show="activityPopup.show" + :activityTitle="activityPopup.title" + :activityDesc="activityPopup.desc" + :activityImage="activityPopup.image" + :endTime="activityPopup.endTime" + :prizeActivityId="activityPopup.prizeActivityId" + @close="onClosePopup" + /> </view> </template> @@ -274,8 +286,13 @@ thubmsUpComment, cancelThubmsUpComment, changeThumbsUp, - getGoodsSimilarlyVideos + getGoodsSimilarlyVideos, + removeByIdVideoComment, } from "@/api/video.js"; + +import ActivityPopup from '@/pages/ActivityPopup/ActivityPopup.vue' +import { mapState, mapMutations } from 'vuex' +import {setPopupRedisTime,getPopupAcitivty} from '@/api/popup.js' import { changeCollect } from "@/api/collect.js"; import { saveShare, saveShareClickRecord } from "@/api/share.js"; import { silentLogin } from "@/api/connect.js"; @@ -285,11 +302,13 @@ import { nextTick } from "vue"; import {getVideoCover } from "@/api/common.js" export default { - components: {TopBar}, + components: {TopBar,ActivityPopup}, computed: { hasPlayTime() { return this.sliderFormatTime(this.progress > 0 ? this.duration * this.progress / 100 : 0); - } + }, + // 閿欒锛氭病鏈夌敤 ... 灞曞紑锛屽鑷� activityPopup 鏄嚱鏁� + ...mapState(['activityPopup']) }, data() { return { @@ -382,6 +401,10 @@ } }, onShow() { + + this.openActivityPopup() + + if(!this.userId){ this.getUserId() } @@ -480,14 +503,71 @@ title: videoInfo.title, path: `/pages/tabbar/index/home?videoId=${videoInfo.id}&userId=${userInfo.id}`, imageUrl: videoInfo.coverUrl - } + } // 淇濆瓨鍒嗕韩璁板綍 - - - - - }, + }, methods: { + async openActivityPopup() { + await getPopupAcitivty().then(res =>{ + if(res.statusCode === 200){ + let obj = res.data.data; + if(obj.enableStatus === 'ON'){ + setPopupRedisTime().then(res =>{ + if(res.statusCode === 200){ + if(res.data.state){ + this.showActivityPopup({ + title: obj.activityName, + desc: obj.activityDes, + image: obj.activityCoverUrl, + endTime:new Date(obj.endTime).getTime(), + prizeActivityId:obj.id + }) + }else{ + this.hideActivityPopup() + } + + } + }); + } + + } + }) + + }, + ...mapMutations(['showActivityPopup','hideActivityPopup']), // 寮曞叆Vuex鐨勬柟娉� + onClosePopup() { + this.hideActivityPopup() + }, + replyClick(reply){ + + if(this.userId === reply.userId){ + let that = this; + uni.showModal({ + title: '鎻愮ず', + content: '浣犵‘瀹氳鍒犻櫎鍚�', + success: function (res) { + if (res.confirm) { + console.log('纭畾'); + //璋冪敤鍒犻櫎鐨勯�昏緫 + console.log(reply) + removeByIdVideoComment(reply.id).then(res =>{ + const item = { + id:reply.videoId + } + that.commentQuery.pageNumber = 1; + //閲嶆柊鏇存柊璇勮 + that.showComments(item); + }) + + } else if (res.cancel) { + console.log('鍙栨秷'); + } + } + }); + + } + console.log(reply) + }, // 鎴彇瑙嗛褰撳墠甯� captureVideoFrame(videoCtx) { return new Promise((resolve) => { @@ -844,6 +924,7 @@ this.commentQuery.pageNumber++; }) }, + // 鏄剧ず璇勮寮圭獥 async showComments(item) { this.commentForm.videoId = item.id; @@ -920,7 +1001,9 @@ this.videoNoMore = true; return; } + if(res.data.code===200){ this.videoQuery.pageNumber++; + } }) }else{ @@ -948,7 +1031,9 @@ this.videoNoMore = true; return; } - this.videoQuery.pageNumber++; + if(res.data.code===200){ + this.videoQuery.pageNumber++; + } }) } @@ -1382,7 +1467,7 @@ /* 鍟嗗搧閾炬帴鎮寕灞傛牱寮� */ .goods-link-warp { position: absolute; - bottom: 160px; + bottom: 100px; left: 20px; color: #f8f8f8; z-index: 10; -- Gitblit v1.8.0