getCouponCom.vue 1.59 KB
<template>
    <div class="coupon-com" :class="{'usable': coupons.state == '0', 'disable': coupons.state == '1'}" v-if="coupons">
		<div class="box">
			<div class="coupons-box" :style="{'backgroundImage': 'url(' + (coupons.state == '1' ? couponsLeftBgDisable : couponsLeftBgUsable) + ')'}" @click="todo(coupons, index)">
				<div class="left-box">
					<div class="discount-box">
						<div class="sy">¥</div>
						<div class="discount">{{parseFloat(coupons.discount) === parseInt(coupons.discount) ? parseInt(coupons.discount) : coupons.discount}}</div>
					</div>
					<div class="filled-box">
						满{{parseFloat(coupons.filled) === parseInt(coupons.filled) ? parseInt(coupons.filled) : coupons.filled}}元可用
					</div>
				</div>
				<div class="right-box">
					
				</div>
			</div>
		</div>
    </div>
</template>

<script>
    export default {
		name: 'couponCom',
        data: function () {
            return {
				couponsLeftBgUsable: 'static/img/coupon_usable.png',		// 优惠券左侧背景(可使用)
				couponsLeftBgDisable: 'static/img/coupon_disable.png'		// 优惠券左侧背景(不可用)
            }
        },
        props: ["coupons", "index"],
		methods: {
			
			/**
			 * 优惠券点击事件
			 * @param {Object} coupons [优惠券对象]
			 * @param {Number} index [对象位置索引]
			 */
			todo(coupons, index) {
				
				// 抛出优惠券选择事件
				this.$emit('todo', coupons, index);
			}
		}
    }
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style rel="stylesheet/less" lang="less">
    @import './getCouponCom';
</style>