Vue实现购物车库存加减

<template>
        <div>
              <!-- 数据列表 -->
            <div class="lines" v-for="(item,index) in info" :key="index">
                 <div class="img">
                     <img :src="item.goods_img" class="imgs">

                 </div>
                 <div class="name">
                     商品名称:{{item.goods_name}}
                 </div>
                 <div class="desc">
                    简介:{{item.goods_desc}}
                 </div>
                 <div class="price">
                     单价:¥{{item.goods_price}}
                 </div>
                 <div class="sum">
                     总价:¥{{item.c_price}}
                 </div>

                 <!-- 计数器 -->
                 <!-- <div class="counter"> -->
                     <el-input-number v-model="item.c_num" @change="handleChange(index)" :min="1" class="counter"></el-input-number>
                         <!-- <el-button type="info" icon="el-icon-minus" circle class="jian"></el-button>
                        <div><input type="text" v-model="num" value="item_c_num" class="num"></div>
                         <el-button type="info" icon="el-icon-plus" circle class="jia"></el-button> -->
                 <!-- </div> -->

                 <div>
                      <el-button type="danger" icon="el-icon-delete" circle  class="del"></el-button>
                 </div>

            </div>
        </div>
</template>

<script>
       export default {
          data() {
            return {
               info:[],
            };
          },
          methods:{
              handleChange(index) {
                        this.info[index].c_price =parseFloat(this.info[index].goods_price*this.info[index].c_num).toFixed(2)
                    }
          },
          created() {
                var obj = this
                this.$axios.get(‘/api/carinfo‘)
                .then(function(res){
                    obj.info = res.data.result
                    // console.log(res)
                })
          }

        }
</script>

<style>
    .lines{
        width: 80%;
        height: 170px;
        background-color: mintcream;
        float: left;
    }
    .img{
        width: 130px;
        height: 140px;
        background-color: antiquewhite;
        float: left;
        margin-top: 10px;
        margin-left: 10px;
    }
    .name{
        width: auto;
        height: 40px;
        float: left;
        margin-left: 10px;
        font-size: 16px;
        margin-top: 10px;
        line-height: 40px;
    }
    .desc{
        width: auto;

        height: 40px;
        margin-left: 150px;
        margin-top: 60px;
        font-size: 16px;
        line-height: 40px;
    }
    .price{
        width: 150px;
        height: 40px;
        margin-left: 150px;
        margin-top: 10px;
        font-size: 16px;
        line-height: 40px;
    }
    .sum{
        width: 150px;
        height: 40px;
        margin-left: 450px;
        margin-top: -90px;
        text-align: center;
        font-size:16px;
        line-height: 40px;
    }
    .counter{
        width: 160px;
        height: 50px;
        margin-left: 750px;
        float: left;
        margin-top: -43px;
    }
    .jian{
        width: 50px;
        height: 50px;
        float: left;
        background-color:#FAEBD7;
    }
    .jia{
        width: 50px;
        height: 50px;
        margin-left:0px;
        background-color:#FAEBD7;
    }
    .del{
        margin-right: 100px;
        width: 50px;
        height: 50px;
        float: right;
        margin-top: -50px;
    }
    .num{
        width: 55px;
        height: 45px;
        float: left;
    }
    .imgs{
        width: 100%;
        height

效果图:

原文地址:https://www.cnblogs.com/jiangshiguo/p/12167102.html

时间: 2024-08-30 05:28:13

Vue实现购物车库存加减的相关文章

jQuery实现购物车数字加减效果

效果图: jQuery实现购物车数字加减效果,方法本简单. 经常会写到购物车这块,而购物车很多就有加减这个效果(可以将HTML代码复制多个,同时支持),小小的总结了一下,代码如下: HTML: <div class="gw_num"> <em class="jian">-</em> <input type="text" value="1" class="num"/&

js jquery 权限单选 bug修改以及正确代码 购物车数量加减

效果图废话不多直接上代码 用的avalon渲染,其实都是一样的 <div class="shop-arithmetic"> <a href="javascript:;" class="minus" onclick="delpubls(this)">-</a> <input type="number" style="min-height: 20px;font

微信小程序——购物车数字加减

上一篇,我们有讲到如何造一个购物车弹层.今天来说一下,购物车数量的加减如何实现. 主要思路就是在data里面定义一个属性,属性值就是这个数量.点击+的时候就+1,点击-的时候就-1,再结合setData更改这个数字.当数字等于1的时候,要给-的按钮添加一个disabled的属性. wxml代码: <view class='row item-center'> <button class="buy-num-btn btn-minus" disabled="{{m

jquery实现购物车数量加减,价格计算功能

HTML代码: <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <meta name="viewport" content="width=device-width, initial-scale=1">     <meta http-equiv="X-UA-Co

Goods:购物车条目加减数量实现

list.jsp 1 //给减号添加click事件 2 3 $(".jian") 4 .click( 5 function() { 6 //获取cartItemId 7 var id = $(this).attr("id").substring(0, 32); 8 var quantity = $("#" + id + "Quantity").val(); 9 //判断当前数量是否为1 如果为1就不是修改数量啦 而是删除 10

Vue Input输入框两侧加减框内数字组件

NumberBox组件内容: <template> <div class="number-box" :class="{'box-disable': isDisabled}"> <!-- 此处为"减号"标志的图片 --> <img class="btn-number" src="./reduce.png" @click="onReduce" /&g

静态页面购物车数量加减功能实现

1.进行"加"的效果时:一定要注意:获取单价和数量是禁止使用id或者class选择器,要使用add的选择器去寻找单价和数量的值 HTML: <div class="col-xs-7"> <p>什锦小郡肝套餐</p> <p style="height: 90px"></p> <p style="color: red;font-size: 45px;"> &l

购物车商品加减效果

思路: 根据点击运算符进行相关的运算. 1.获取点击的运算符: 2.通过节点关系找到input的值: 3.进行运算: 4.将计算后的值返回给本身 JavaScript方式: <body> <button onclick="calculate(this)">-</button> <input type="text" size="2" value="1" name="num&qu

实现购物车的加减算法

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <div class="zaocan_2_2"> <div class="card"> <p cla