diff --git a/src/views/ProductDetail.vue b/src/views/ProductDetail.vue index 928733c..6bd01fb 100644 --- a/src/views/ProductDetail.vue +++ b/src/views/ProductDetail.vue @@ -42,6 +42,9 @@ +
+ +
@@ -236,6 +239,8 @@ import { } from '@element-plus/icons-vue' import api from '@/utils/api' +import { watch } from 'vue' + const route = useRoute() const router = useRouter() const userStore = useUserStore() @@ -320,7 +325,7 @@ const buyNow = async () => { } const goToProduct = (productId) => { - router.push(`/product/${productId}`) + router.replace(`/product/${productId}`) } const previewImage = (image) => { @@ -342,15 +347,26 @@ const getUserPoints = async () => { // 生命周期 onMounted(() => { - getProductDetail() + //getProductDetail() getUserPoints() }) + +watch( + () => route.params.id, + (newId) => { + if (newId) { + getProductDetail() + quantity.value = 1 // 重置数量 + } + }, + { immediate: true } +)