From daa9adbc0e2fded884ea9e51fbe44cd22f6756a1 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期六, 28 二月 2026 15:16:41 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 mini-program/pages/details/details.vue |   26 +++++++++++++++++++++++++-
 1 files changed, 25 insertions(+), 1 deletions(-)

diff --git a/mini-program/pages/details/details.vue b/mini-program/pages/details/details.vue
index 682eca0..06e5264 100644
--- a/mini-program/pages/details/details.vue
+++ b/mini-program/pages/details/details.vue
@@ -50,12 +50,15 @@
 			</view>
 			<view style="width: 100%; height: env(safe-area-inset-bottom);"></view>
 		</view>
+		<Login ref="login" />
 	</view>
 </template>
 
 <script>
 	import { mapState } from 'vuex'
+	import Login from '@/components/login/login.vue'
 	export default {
+		components: { Login },
 		computed: {
 			...mapState(['userInfo'])
 		},
@@ -69,10 +72,19 @@
 		onLoad(option) {
 			this.id = option.id
 			this.getDetails()
-			this.cardNum()
+			
+		},
+		onShow() {
+			if (this.userInfo) {
+				this.cardNum()
+			}
 		},
 		methods: {
 			shoucang() {
+				if (!this.userInfo) {
+					this.$refs.login.open()
+					return
+				}
 				if (this.info.collectStatus === 1) {
 					this.$u.api.cancelbatch({ ids: this.info.id })
 						.then(res => {
@@ -90,6 +102,10 @@
 				}
 			},
 			submit() {
+				if (!this.userInfo) {
+					this.$refs.login.open()
+					return
+				}
 				let shop = [
 					{
 						goodsNum: 1,
@@ -102,6 +118,10 @@
 				})
 			},
 			addCard(e) {
+				if (!this.userInfo) {
+					this.$refs.login.open()
+					return
+				}
 				this.$u.api.addCart({
 					goodsId: e.id,
 					goodsSkuId: e.skuResponsesList[0].id,
@@ -114,6 +134,10 @@
 				})
 			},
 			toCard() {
+				if (!this.userInfo) {
+					this.$refs.login.open()
+					return
+				}
 				uni.navigateTo({
 					url: '/pages/shopping-cart/shopping-cart'
 				})

--
Gitblit v1.9.3