vue 实现 商品购买数量加减

在这里插入图片描述
页面数据

            <div class="number layui-form">
              <label>数量</label>
              <div class="layui-input-inline btn-input">
                <button class="layui-btn layui-btn-primary " @click="editCount(-1)" :disabled="buyCount==1">-</button>
                <input type="number" class="layui-input" v-model="buyCount">
                <button class="layui-btn layui-btn-primary " @click="editCount(1)" :disabled="buyCount==productInfo.stock">+</button>
              </div>
              <p class="inputTips">已超出库存数量!</p>
            </div>

在data中定义变量

 //购买数量
buyCount:1  //默认购买1个

在methods中定义方法实现:

         //购买数量+  -
          editCount(count){
            this.buyCount=this.buyCount+count;
          },

创建购物数量监听

//购物数量监听
      watch:{
          buyCount:function (newValue,oldValue) {
            //this.productInfo.stock  数据库现有库存
            if(parseInt(newValue)> this.productInfo.stock){
              this.buyCount = this.productInfo.stock;
            }else if(parseInt(newValue)<1){
              this.buyCount = 1;
            }else if(isNaN(newValue)){
              this.buyCount = 1;
            } else {
              this.buyCount=parseInt(newValue);
            }
          }
      }

去掉type=“number” 自带的上下按钮箭头

<style scoped>

  input[type=number] {
     -moz-appearance:textfield;
   }
  input[type=number]::-webkit-inner-spin-button,
  input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }
</style>
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jq1223

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值