101 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Vue
		
	
	
			
		
		
	
	
			101 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Vue
		
	
	
<template>
 | 
						|
  <su-fixed bottom placeholder :val="44">
 | 
						|
    <view>
 | 
						|
      <view v-for="activity in props.activityList" :key="activity.id">
 | 
						|
        <!-- TODO 芋艿:拼团 -->
 | 
						|
        <view
 | 
						|
          class="activity-box ss-p-x-38 ss-flex ss-row-between ss-col-center"
 | 
						|
          :class="activity.type === 1 ? 'seckill-box' : 'groupon-box'"
 | 
						|
        >
 | 
						|
          <view class="activity-title ss-flex">
 | 
						|
            <view class="ss-m-r-16">
 | 
						|
              <image
 | 
						|
                v-if="activity.type === 1"
 | 
						|
                :src="sheep.$url.static('/static/img/shop/goods/seckill-icon.png')"
 | 
						|
                class="activity-icon"
 | 
						|
              />
 | 
						|
              <!-- TODO 芋艿:拼团 -->
 | 
						|
              <image
 | 
						|
                v-else-if="activity.type === 3"
 | 
						|
                :src="sheep.$url.static('/static/img/shop/goods/groupon-icon.png')"
 | 
						|
                class="activity-icon"
 | 
						|
              />
 | 
						|
            </view>
 | 
						|
            <view>该商品正在参与{{ activity.name }}活动</view>
 | 
						|
          </view>
 | 
						|
          <button class="ss-reset-button activity-go" @tap="onActivity(activity)"> GO </button>
 | 
						|
        </view>
 | 
						|
      </view>
 | 
						|
    </view>
 | 
						|
  </su-fixed>
 | 
						|
</template>
 | 
						|
 | 
						|
<script setup>
 | 
						|
  import sheep from '@/sheep';
 | 
						|
 | 
						|
  // TODO 芋艿:这里要迁移下;
 | 
						|
  const seckillBg = sheep.$url.css('/static/img/shop/goods/seckill-tip-bg.png');
 | 
						|
  const grouponBg = sheep.$url.css('/static/img/shop/goods/groupon-tip-bg.png');
 | 
						|
 | 
						|
  const props = defineProps({
 | 
						|
    activityList: {
 | 
						|
      type: Array,
 | 
						|
      default() {
 | 
						|
        return [];
 | 
						|
      }
 | 
						|
    }
 | 
						|
  });
 | 
						|
 | 
						|
  function onActivity(activity) {
 | 
						|
    const type = activity.type;
 | 
						|
    const typePath = type === 1 ? 'seckill' :
 | 
						|
      type === 2 ? 'TODO 拼团' : 'groupon';
 | 
						|
    sheep.$router.go(`/pages/goods/${typePath}`, {
 | 
						|
      id: activity.id,
 | 
						|
    });
 | 
						|
  }
 | 
						|
</script>
 | 
						|
 | 
						|
<style lang="scss" scoped>
 | 
						|
  .activity-box {
 | 
						|
    width: 100%;
 | 
						|
    height: 80rpx;
 | 
						|
    box-sizing: border-box;
 | 
						|
    margin-bottom: 10rpx;
 | 
						|
 | 
						|
    .activity-title {
 | 
						|
      font-size: 26rpx;
 | 
						|
      font-weight: 500;
 | 
						|
      color: #ffffff;
 | 
						|
      line-height: 42rpx;
 | 
						|
 | 
						|
      .activity-icon {
 | 
						|
        width: 38rpx;
 | 
						|
        height: 38rpx;
 | 
						|
      }
 | 
						|
    }
 | 
						|
 | 
						|
    .activity-go {
 | 
						|
      width: 70rpx;
 | 
						|
      height: 32rpx;
 | 
						|
      background: #ffffff;
 | 
						|
      border-radius: 16rpx;
 | 
						|
      font-weight: 500;
 | 
						|
      color: #ff6000;
 | 
						|
      font-size: 24rpx;
 | 
						|
      line-height: normal;
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  //秒杀卡片
 | 
						|
  .seckill-box {
 | 
						|
    background: v-bind(seckillBg) no-repeat;
 | 
						|
    background-size: 100% 100%;
 | 
						|
  }
 | 
						|
 | 
						|
  .groupon-box {
 | 
						|
    background: v-bind(grouponBg) no-repeat;
 | 
						|
    background-size: 100% 100%;
 | 
						|
  }
 | 
						|
</style>
 |