修改搜索商品的详情页加入购物车按钮的显示逻辑

This commit is contained in:
赵毅 2025-10-24 16:11:20 +08:00
parent 56e0d60f34
commit a139ec38c9
2 changed files with 43 additions and 39 deletions

View File

@ -284,6 +284,11 @@ image {
margin-top: 26rpx;
}
.car_right_disabled {
background: #CCCCCC;
color: #FFFFFF;
}
.cars {
display: flex;
flex-direction: column;

View File

@ -175,30 +175,22 @@
</view>
<view class="car_right" v-if="
!info.commodity_goods_info_list[currentGGIndex].cart_count ||
info.commodity_goods_info_list[currentGGIndex].cart_count.count == 0
info.commodity_goods_info_list[currentGGIndex].stock_quantity > 0 &&
(!info.commodity_goods_info_list[currentGGIndex].cart_count ||
info.commodity_goods_info_list[currentGGIndex].cart_count.count == 0)
" @click="addCar">
加入购物车
</view>
<view class="car_right" v-if="info.commodity_goods_info_list[currentGGIndex].cart_count.count > 0">
<!-- <view class="car_right"> -->
<u-number-box v-model="info.commodity_goods_info_list[currentGGIndex].cart_count.count"
@change="changeCar" min="0">
<!-- <u-number-box > -->
<view slot="minus" class="minus">
<u-icon name="minus" size="36" bold></u-icon>
</view>
<text slot="input" style="width: 200rpx; text-align: center" class="input">
{{ info.commodity_goods_info_list[currentGGIndex].cart_count.count }}
</text>
<!-- text slot="input" style="width: 200rpx; text-align: center" class="input">
{{info.commodity_goods_info_list[currentGGIndex]}}
</text> -->
<view slot="plus" class="plus">
<u-icon name="plus" color="#FFFFFF" size="36" bold></u-icon>
</view>
</u-number-box>
<view class="car_right" @click="changeCar" v-if="
info.commodity_goods_info_list[currentGGIndex].cart_count.count > 0
&& info.commodity_goods_info_list[currentGGIndex].stock_quantity > 0
">
加入购物车
</view>
<view class="car_right car_right_disabled" v-if="info.commodity_goods_info_list[currentGGIndex].stock_quantity < 1">
已售罄
</view>
</view>
@ -576,32 +568,39 @@ export default {
},
//
changeCar(newValue) {
// //
// this.info.commodity_goods_info_list[this.currentGGIndex].cart_count.count = newValue.value
// //
// this.carOrderList.forEach(item => {
// if (item.commodity_goods_info.id == this.info.commodity_goods_info_list[this.currentGGIndex].id) {
// item.count = newValue.value
// }
// })
// //
// let carNum = 0
// this.carOrderList.forEach(item => {
// carNum += item.count
// })
// this.carNum = carNum
//
changeCar() {
// addCar
const currentGoods = this.info.commodity_goods_info_list[this.currentGGIndex];
const currentQuantity = currentGoods.cart_count ? currentGoods.cart_count.count : 0;
const stockQuantity = currentGoods.stock_quantity || 0;
//
if (currentQuantity >= stockQuantity) {
uni.showToast({
title: "库存不足",
icon: "none",
duration: 2000
});
return;
}
//
currentGoods.cart_count = {
count: currentQuantity + 1,
};
const params = {
user_id: uni.getStorageSync("userId"),
goods_id_and_count: [{
goods_id: this.info.commodity_goods_info_list[this.currentGGIndex].id,
count: newValue.value,
},],
goods_id: currentGoods.id,
count: currentGoods.cart_count.count,
}],
};
request(apiArr.updateCar, "POST", params).then((res) => {
console.log(res);
this.getShopCarList();
this.getShopCar();
uni.showToast({
title: "操作成功!",
success() { },