简易购物车

这篇博客演示了在Vue.js中如何利用v-model和计算属性computed进行数据绑定和计算操作,以实现购物车的小程序。通过v-model.number修饰符确保输入为数字,并计算手机、电脑的子总价,以及运费、总金额、优惠和应付金额,展示了Vue.js在前端开发中的数据响应和计算能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

新手vue中练习v-module与计算属性computed的小demo

这里也可以在插值表达式中直接运算结果  但是个人提倡通过计算属性来对数据进行计算 

v-module.后面的是修饰符  有三个属性 

.lazy并不是实时改变,而是在失去焦点或者按回车时才会更新
 .number将输入转换成Number类型
.trim可以自动过滤输入首尾的空格
代码:

<template>
  <div id="app">
    <nav>
        <h2>案例:购物车结算</h2>
    </nav>
    <div class="main">
       <div class="main-item">
            <span>手机:价格</span>
            <input type="text" v-model.number="phoneNum">
            <span>数量</span>
            <input type="text" v-model.number="phoneCount">
            <span>小计 {{phoneSum}}元</span>
       </div>
        <div class="main-item">
            <span>电脑:价格</span>
            <input type="text" v-model.number="comNum">
            <span>数量</span>
            <input type="text" v-model.number="comCount">
            <span>小计 {{comSum}}元</span>
       </div>
       <div class="main-item">
            <span>运费:</span>
            <input type="text" v-model.number="fare">元
       </div>
       <div class="mian-item">
             共计:<span>{{getSum}}</span>元 <br>
             优惠:<span>{{disCount}}</span>元 <br>
             应付:<span>{{price}}</span>元 <br>
       </div>
    </div>
  </div>
</template>
 
<script>
export default {
  data () {
    return {
      phoneNum: 2989,
      phoneCount: 1,
      comNum: 6000,
      comCount: 1,
      fare: 10
    }
  },
  computed: {
    // 手机小计
    phoneSum () {
      return this.phoneNum * this.phoneCount
    },
    // 电脑小计
    comSum () {
      return this.comNum * this.comCount
    },
    // 总金额
    getSum () {
      return this.phoneSum + this.comSum + this.fare
    },
    // 优惠金额
    disCount () {
      return this.getSum > 8000 ? 200 : 100
    },
    // 应付金额
    price () {
      return this.getSum - this.disCount
    }
  }
}
</script>
 
<style scoped lang='less'>
 
nav{
   margin-left: 300px;
}
.main{
    margin-top: 20px;
    .main-item{
        margin-top: 20px;
    }
    span{
        margin: 0 5px;
    }
}
</style>

 效果图:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值