zoukankan      html  css  js  c++  java
  • Vue实现商城里面多个商品计算,全选,删除

    <!--包含  全选/不全选   批量删除   全部金额计算   数量加减-->

    简陋的CSS代码

    .main{
    100%;
    }
    .title{
    100%;
    height: 40px;
    line-height: 40px;
    background: #4c4c4c;
    color: #ffffff;
    }
    .title input{
    20px;
    height:20px;
    background: #ffffff;
    margin-left: 20px;
    appearance: checkbox;
    -webkit-appearance: checkbox;
    }
    .list_item input{

    20px;
    height:20px;
    appearance: checkbox;
    -webkit-appearance: checkbox;
    }
    ul{
    100%;
    }
    li.list_item{
    100%;
    height: 100px;
    border-bottom: 4px solid blue;
    padding: 4px;
    }
    li.list_item .L{
    20%;
    height: 100%;
    }
    li.list_item .L img{
    100%;
    height: 100%;
    }
    li.list_item .R{
    80%;
    height: 100%;
    }
    .jian,.jia{
    display: inline-block;
    40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background: black;
    color: #ffffff;
    }

    HTML代码
    <div class="main">
    <div class="title">
    <input type="checkbox" name="vehicle1" value="Bike" @click="quan" v-model="quanTodo">全选/不全选
    <span class="fr" @click="deleteTodo">批量删除</span>
    </div>
    <ul class="list">
    <li class="list_item" v-for="(item,index) in list">
    <div class="L fl">
    <img src="../img/timg1.jpg">
    </div>
    <div class="R fl">
    <h1>{{item.title}}</h1>
    <div class="compute">
    <span class="price"></span>
    <div class="compute_R">
    <span class="jian" @click="jian(item)">-</span>
    <span class="num">{{item.num}}</span>
    <span class="jia" @click="add(item)">+</span>
    </div>
    <input type="checkbox" name="vehicle" :checked="item.checkbox" v-model="item.checkbox">
    </div>
    </div>
    </li>
    </ul>
    共计{{reversedMessage}}元
    </div>

    JS代码
    let arr=[
    {title:'商品1',num:1,price:10,checkbox:true},
    {title:'商品2',num:1,price:20,checkbox:true},
    {title:'商品3',num:1,price:30,checkbox:true},
    {title:'商品4',num:1,price:40,checkbox:true}
    ];
    var vm=new Vue({
    el:".main",
    data:{
    list:arr,
    quanTodo:true
    },
    computed: {
    reversedMessage: function () {
    var price=0;
    for(var i=0;i<this.list.length;i++){
    if(this.list[i].checkbox){
    price+=this.list[i].num*this.list[i].price;
    }
    }
    return price;
    }
    },
    methods:{
    a(item){
    console.log(item);
    },
    jian(item){
    if(item.num>0){
    item.num--;
    }

    },
    add(item){
    item.num++;
    },
    quan(){
    console.log(this.quanTodo);
    if(this.quanTodo==true){
    for(var i=0;i<this.list.length;i++){
    this.list[i].checkbox=false;
    }
    console.log('不选中'+this.quanTodo);
    }
    else{
    console.log('选中'+this.quanTodo);
    console.log(this.list);
    for(var j=0;j<this.list.length;j++){
    this.list[j].checkbox=true;
    console.log(this.list[j].checkbox);
    }
    }
    },
    deleteTodo(){
    for(var i=this.list.length-1;i>=0;i--){
    if(this.list[i].checkbox){
    var index=this.list.indexOf(this.list[i]);
    this.list.splice(index,1);
    }
    }
    }
    }
    });


      

  • 相关阅读:
    蓝桥杯 矩阵翻硬币
    2018 南京预选赛 J Sum ( 欧拉素数筛 、Square-free Number、DP )
    HDU 3826 Squarefree number ( 唯一分解定理 )
    HDU 5727 Necklace ( 2016多校、二分图匹配 )
    HDU 5726 GCD (2016多校、二分、ST表处理区间GCD、数学)
    hihocoder 1457 后缀自动机四·重复旋律7 ( 多串连接处理技巧 )
    后缀自动机 ( SAM ) 模板
    2018 焦作网络赛 K Transport Ship ( 二进制优化 01 背包 )
    2018 焦作网络赛 G Give Candies ( 欧拉降幂 )
    蓝桥杯 买不到的数目 ( 裴蜀定理 )
  • 原文地址:https://www.cnblogs.com/qiuchuanji/p/7661685.html
Copyright © 2011-2022 走看看