MrShi
20 小时以前 56d7ebbc6297c306ec7197f29737a59703ca4bda
mini-program/pages/details/details.vue
@@ -16,7 +16,7 @@
               </view>
            </view>
            <view class="info-num">
               <text>已售 {{info.saleNum + info.realSaleNum}}+</text>
               <text>已售 {{info.shou}}+</text>
               <text>库存 {{info.stock}}</text>
            </view>
         </view>
@@ -48,7 +48,8 @@
               </view>
               <view class="edit-btn">
                  <template v-if="info.status === 0">
                     <view class="edit-btn-a" @click="addCard(info)">加入购物车</view>
                     <!-- addCard(info) -->
                     <view class="edit-btn-a" @click="show = true">加入购物车</view>
                     <view class="edit-btn-b" @click="submit">立即购买</view>
                  </template>
                  <template v-else>
@@ -66,6 +67,31 @@
         </view>
      </template>
      <Login ref="login" />
      <u-popup :show="show" mode="bottom" round="20" closeable @close="show = false">
         <view class="cart">
            <view class="goods">
               <view class="goods-image">
                  <image :src="info.imgurl" mode="widthFix"></image>
               </view>
               <view class="goods-info">
                  <view class="commodity-item-box-price">
                     <view class="commodity-item-box-price-a">
                        <text>{{info.minPrice[0]}}</text>
                        <text>.{{info.minPrice[1]}}</text>
                     </view>
                     <view class="commodity-item-box-price-b">
                        原价¥{{info.linePrice}}
                     </view>
                  </view>
                  <view class="goods-info-kc">
                     库存 210
                  </view>
                  <u-number-box v-model="num"></u-number-box>
               </view>
            </view>
            <view class="cart-btn" @click="addCard(info)">加入购物车</view>
         </view>
      </u-popup>
   </view>
</template>
@@ -81,7 +107,9 @@
         return {
            id: null,
            info: null,
            cardObj: null
            cardObj: null,
            show: false,
            num: 1
         };
      },
      onLoad(option) {
@@ -140,10 +168,11 @@
            this.$u.api.addCart({
               goodsId: e.id,
               goodsSkuId: e.goodsSkuResponseList[0].id,
               num: 1
               num: this.num
            }).then(res => {
               if (res.code === 200) {
                  this.cardNum()
                  this.show = false
                  uni.showToast({ title: '添加成功', icon: 'success', mask: true })
               }
            })
@@ -183,6 +212,7 @@
                     if (res.data.goodBannerMultiFiles && res.data.goodBannerMultiFiles.length > 0) {
                        res.data.banner = res.data.goodBannerMultiFiles.map(item => item.fileurlfull)
                     }
                     res.data.shou = (res.data.salenum  || 0) + (res.data.realSaleNum || 0)
                     this.info = res.data
                  }
               })
@@ -202,6 +232,93 @@
<style lang="scss" scoped>
   .details {
      width: 100%;
      .cart {
         width: 100%;
         padding: 40rpx 30rpx;
         box-sizing: border-box;
         display: flex;
         flex-direction: column;
         .goods {
            width: 100%;
            display: flex;
            align-items: center;
            .goods-image {
               flex-shrink: 0;
               margin-right: 30rpx;
               width: 200rpx;
               height: 200rpx;
               display: flex;
               align-items: center;
               justify-content: center;
               overflow: hidden;
               background: #FFFFFF;
               border-radius: 8rpx;
               border: 1rpx solid #EEEEEE;
               image {
                  width: 100%;
               }
            }
            .goods-info {
               flex: 1;
               height: 200rpx;
               display: flex;
               flex-direction: column;
               justify-content: space-between;
               .goods-info-kc {
                  font-weight: 400;
                  font-size: 24rpx;
                  color: #999999;
               }
               .commodity-item-box-price {
                  width: 100%;
                  display: flex;
                  align-items: baseline;
                  margin-top: 8rpx;
                  .commodity-item-box-price-a {
                     display: flex;
                     align-items: baseline;
                     margin-right: 8rpx;
                     text {
                        &:nth-child(1) {
                           font-weight: bold;
                           font-size: 48rpx;
                           color: #E4001D;
                           &::before {
                              content: '¥';
                              font-weight: 400;
                              font-size: 26rpx;
                              color: #E4001D;
                           }
                        }
                        &:nth-child(2) {
                           font-weight: 400;
                           font-size: 26rpx;
                           color: #E4001D;
                        }
                     }
                  }
                  .commodity-item-box-price-b {
                     font-weight: 400;
                     font-size: 24rpx;
                     color: #999999;
                     text-decoration: line-through;
                  }
               }
            }
         }
         .cart-btn {
            width: 100%;
            height: 88rpx;
            line-height: 88rpx;
            text-align: center;
            background: #004096;
            border-radius: 44rpx;
            font-weight: 500;
            font-size: 32rpx;
            color: #FFFFFF;
            margin-top: 80rpx;
         }
      }
      .wuImg {
         width: 100%;
         display: flex;