CommodityCard.vue 2.93 KB
<template>
  <view
    class="card"
    @tap="toGoods(goods.shop_wood_id?goods.shop_wood_id:goods.shop_wood_id,goods.eyegArr[0].wsp_id)"
  >
    <easy-loadimage
      mode="widthFix"
      :scroll-top="scrollTop"
      :image-src="goods.url0?goods.url0:goods.url45"
      :viewHeight="viewHeight"
    ></easy-loadimage>
    	<!-- <image
      mode="widthFix"
      :src="goods.url0?goods.url0:goods.url45"
    ></image> -->
    <view class="name">{{goods.shop_wood_name?goods.shop_wood_name:goods.shop_wood_name}}</view>
    <view class="info">
      <view class="priceBox">
        <view class="price">{{goods.sales_price ? goods.sales_price : (goods.sales_price && goods.rsSon.sales_price)}}</view>
        <view class="originCost">
          <!-- {{goods.price !== undefined?goods.price:goods.real_price}} -->
          {{goods.sales_price ? goods.sales_price : parseInt(goods.sales_price && goods.sales_price*(1 + Number(0)/100))}}
        </view>
      </view>
      <view class="trade_num">{{goods.sales_num}}人购买</view>
    </view>
  </view>
</template>

<script>
import easyLoadimage from '@/components/EasyLoadimage/EasyLoadimage.vue'
// const MockData = require('@/static/easy-loadimage/mock-data.json')
export default {
  components: { easyLoadimage },
  props: {
    /**
    * 商品数据
    */
    goods: {
      shop_wood_id: Number,
      url0: String,
      url45: String,
      shop_wood_name: String,
      // rsSon: Object,
      // originCost: String,
      sales_price: String,
      sales_num: String,
      // goodType: String,
	  eyegArr:Object
    },
    scrollTop: Number,
    viewHeight: Number,
  },
  created () {
  },
  data () {
    return {

    }
  },

  methods: {
    toGoods (shop_wood_id, skuId) {
      console.log('---', '../details/details?shop_wood_id=' + shop_wood_id + '&sk_id=' + skuId)
      uni.navigateTo({
        url: '../details/details?shop_wood_id=' + shop_wood_id + '&sk_id=' + skuId,
        success: res => {},
        fail: () => {},
        complete: () => {},
      })
    },
  },
}
</script>

<style lang="scss">
image {
  width: 100%;
  height: 120rpx;
}
.name {
  width: 92%;
  height: 84rpx;
  padding: 5px 4%;
  box-sizing: border-box;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  text-align: justify;
  overflow: hidden;
  font-size: 26rpx;
  color: #333333;
}
.info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 92%;
  padding: 5px 4% 5px 4%;
  .priceBox {
    display: flex;
    justify-content: space-between;
    align-items: center;
    .price {
      color: #eb5d3b;
      font-size: 28rpx;
      font-weight: 600;
      margin-right: 10rpx;
    }
    .originCost {
      text-decoration: line-through;
      color: #999999;
      font-size: 20rpx;
    }
  }
  .trade_num {
    color: #999999;
    font-size: 20rpx;
  }
}
</style>