Vue实现简单的购物车案例

编辑: admin 分类: javascript 发布时间: 2021-11-17 来源:互联网

本文实例为大家分享了Vue实现简单的购物车案例的具体代码,供大家参考,具体内容如下

代码:

<template>
  <div>
    <div>
      <span>手机: </span>
      <span>价格</span> <input type="number" v-model.number="phonePrice">
      <span> 数量 </span><input type="number" v-model.number="phoneCount">
      <span> 小计: </span><span>{{phoneTotal}}元</span>
    </div>
    <div>
      <span>电脑: </span>
      <span>价格</span> <input type="number" v-model.number="computerPrice">
      <span> 数量 </span><input type="number" v-model.number="computerCount">
      <span> 小计: </span><span>{{computerTotal}}元</span>
    </div>
    <div>
      <span>运费: </span><input type="number" v-model.number="freight"><span>元</span><br>
      <span>共计: {{total}}元</span>
      <p>优惠: {{discounts}}元</p>
      <p>应付: {{allPrice}}</p>
    </div>
  </div>
</template>

<script>
export default {
  data () {
    return {
      phonePrice: '', // 手机单价
      phoneCount: '', // 手机数量
      computerPrice: '', // 电脑单价
      computerCount: '', // 电脑数量
      freight: '', // 运费
      discounts: ''
    }
  },
  computed: {
    phoneTotal () {
      return this.phonePrice * this.phoneCount
    },
    computerTotal () {
      return this.computerPrice * this.computerCount
    },
    // 总价
    total () {
      return this.computerTotal + this.phoneTotal + this.freight
    },
    allPrice () {
      return this.total - this.discounts
    }
  },
  watch: {
    total: {
      depp: true,
      handler () {
        if (this.phoneTotal + this.computerTotal > 5000 && this.phoneTotal + this.computerTotal < 8000) {
          this.discounts = 100
        } else if (this.phoneTotal + this.computerTotal > 8000) {
          this.discounts = 200
        }
      }
    }
  }
}
</script>

<style scoped lang='less'>
</style>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持hwidc。

新加坡服务器http://www.558idc.com/sin.html