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

简陋的CSS代码

.main{
width: 100%;
}
.title{
width: 100%;
height: 40px;
line-height: 40px;
background: #4c4c4c;
color: #ffffff;
}
.title input{
width: 20px;
height:20px;
background: #ffffff;
margin-left: 20px;
appearance: checkbox;
-webkit-appearance: checkbox;
}
.list_item input{ width: 20px;
height:20px;
appearance: checkbox;
-webkit-appearance: checkbox;
}
ul{
width: 100%;
}
li.list_item{
width: 100%;
height: 100px;
border-bottom: 4px solid blue;
padding: 4px;
}
li.list_item .L{
width: 20%;
height: 100%;
}
li.list_item .L img{
width: 100%;
height: 100%;
}
li.list_item .R{
width: 80%;
height: 100%;
}
.jian,.jia{
display: inline-block;
width: 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);
}
}
}
}
});

  

Vue实现商城里面多个商品计算,全选,删除的更多相关文章

  1. vue实现商品购物车全选与全不选项目实战

    项目需求: 实现一个购物车 全选框实现对商家和商品的全选 商家全选框实现对当前商家所有商品的全选 取消其中一个商品则取消对应商家全选和全选框 选中一个商家下的所有商品则勾选对应商家的全选框,不勾选全选 ...

  2. vue实战记录(五)- vue实现购物车功能之商品总金额计算和单选全选删除功能

    vue实战,一步步实现vue购物车功能的过程记录,课程与素材来自慕课网,自己搭建了express本地服务器来请求数据 作者:狐狸家的鱼 本文链接:vue实战-实现购物车功能(五) GitHub:sue ...

  3. vue2购物车ch3-(过滤器使用 单件商品金额计算 全选全不选 总金额计算 删除商品功能)

    1 index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  4. vue实现全选效果

    vue实现全选效果 接触vue快半年了,记得刚用vue做项目的时候遇到一个全选功能,当时到处百度也没有找到怎么实现,最后还是用了jquery进行dom操作实现的. 今天没事就顺手写了一个,感觉很简单, ...

  5. vue中实现全选功能

    <!DOCTYPE html><html><head><meta charset="utf-8"><title>Vue ...

  6. Vue全选和全不选

    HTML代码: <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script> ...

  7. vue+vant-UI框架写的购物车的复选框全选和反选

    购物车页面的设计图 商品的列表 代码: <ul v-if="shoppingListData.rows.length"> <li v-for="(ite ...

  8. thinkphp5+vue+iview商城 公众号+小程序更新版本

    thinkphp5+vue+iview商城加分销 源码下载地址:http://github.crmeb.net/u/crmeb 演示站后台:http://demo25.crmeb.net 账号:dem ...

  9. 基于vue2.0打造移动商城页面实践 vue实现商城购物车功能 基于Vue、Vuex、Vue-router实现的购物商城(原生切换动画)效果

    基于vue2.0打造移动商城页面实践 地址:https://www.jianshu.com/p/2129bc4d40e9 vue实现商城购物车功能 地址:http://www.jb51.net/art ...

随机推荐

  1. Java基础学习 —— io

    /** 解决数据与数据之间的传输问题. 字节流: 输入字节流: -------| InputStream 所有输入字节流的基类.抽象类. -----------| FileInputStream 读取 ...

  2. 使用SVG基本操作API

    前面的话 本文将详细介绍SVG基本操作API,并使用这些API操作实例效果 基础API 在javascript中,可以使用一些基本的API来对SVG进行操作 [NS地址] 因为SVG定义在其自身的命令 ...

  3. poj 3694双联通缩点+LCA

    题意:给你一个无向连通图,每次加一条边后,问图中桥的数目. 思路:先将图进行双联通缩点,则缩点后图的边就是桥,然后dfs记录节点深度,给出(u,v)使其节点深度先降到同一等级,然后同时降等级直到汇合到 ...

  4. 六,ESP8266 TCP Client

    今天不知道是不是让我姐挺失望.......很多时候都不知道自己努力的方向对不对,,以后能不能带给家人最美好的期盼...... Init.lua 没啥改变,,就改了一下加载Client.lua gpio ...

  5. 201521123036 《Java程序设计》第7周学习总结

    本周学习总结 以你喜欢的方式(思维导图或其他)归纳总结集合相关内容. 书面作业 ArrayList代码分析 1.1 解释ArrayList的contains源代码 answer:用于判断Collect ...

  6. 201521123025<<java程序设计>>第4周学习总结

    Q1. 本周学习总结 Q2.书面作业 1.注释的应用 使用类的注释与方法的注释为前面编写的类与方法进行注释,并在Eclipse中查看.(截图) 2.面向对象设计(大作业1,非常重要) 2.1 将在网上 ...

  7. 201521123010 《Java程序设计》第3周学习总结

    1. 本周学习总结 2. 书面作业 1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; p ...

  8. 笔记1 linux 多线程 互斥锁

    //mutex lock #include<stdio.h> #include<unistd.h> #include<pthread.h> struct test ...

  9. [3] 微信公众号开发 - 结合UEditor实现图文消息群发功能

    0.写在前面的话 如何实现微信平台后台管理中的,图文消息发送功能? 大概的过程如下: 通过类似表单的形式,将文章各部分内容提交到后台,封装成一个实体类,并持久化到数据库中 需要推送的时候,将不同的文章 ...

  10. 关于使用lombok遇到的问题

    在官网上下载了lombok.jar包以后,有两种安装方式 : 1. 双击下载下来的 JAR 包安装 lombok    我选择这种方式安装的时候提示没有发现任何 IDE,所以我没安装成功,我是手动安装 ...