vue+vant-UI框架实现购物车的复选框全选和反选功能


Posted in Javascript onNovember 05, 2019

购物车页面的设计图

vue+vant-UI框架实现购物车的复选框全选和反选功能

商品的列表

vue+vant-UI框架实现购物车的复选框全选和反选功能

代码:

<ul v-if="shoppingListData.rows.length">
<li
v-for="(item,index) in shoppingListData.rows"
:key="index"
>
<van-checkbox
:value="item.goods_id"
v-model="item.isChecked"
checked-color="#07c160"
@click="chooseChange(item.goods_id)"
></van-checkbox>
<div class="list_details">
<div class="shop_img"><img
:src="item.goods_image+'?w=150&h=150&crop=1'"
alt=""
></div>
<div class="goods_presentation">
<div class="pTitle"><p class="p1">{{item.goods_name}}</p></div>
<!-- <p class="p2">{{item.color}}</p> -->
<div class="price">
<span class="spanSprice">{{item.now_price | formatMoney}}</span>
<span class="span_step">
<button
@click="handleReduce(index)"
:disabled="item.goods_qty===1"
>-</button>
<i>{{item.goods_qty}}</i>
<button @click="handleAdd(index)">+</button>
</span>
</div>
</div>
</div>
</li>
</ul>

全选的复选框

vue+vant-UI框架实现购物车的复选框全选和反选功能

全选的代码:

<div class="footerflex">
     <van-checkbox
      v-model="AllChecked"
      @click="checkAll"
     >全选</van-checkbox>
     <span 
     class="management" 
     v-if="managementShow"
     @click="management()"
     >管理</span>
     <span 
     class="finish"
     v-if="finishShow"
     @click="management()"
     >完成</span>
     <van-button type="default" class='delete' @click="sureDel()" v-if="finishShow">删除</van-button>
     <div v-if="managementShow">
      <span class="summation">合计</span>
      <i>{{ totalPrice }}</i>
      <van-button type="default" class="pay" @click="closeAnAccount()">结算</van-button>
     </div>
    </div>

单选的change事件

vue+vant-UI框架实现购物车的复选框全选和反选功能

代码:

// 单选的change事件
  chooseChange(id) {
   if (this.selectedData.indexOf(id) > -1) {
    this.remove(this.selectedData, id);
   } else {
    this.selectedData.push(id);
   }
   if (this.selectedData.length < this.shoppingListData.total) {
    this.AllChecked = false;
   } else {
    this.AllChecked = true;
   }
   console.log(this.selectedData);
  }

全选的JS

vue+vant-UI框架实现购物车的复选框全选和反选功能

全选的代码:

// 全选和反选
  checkAll() {
   let list = this.shoppingListData.rows;
   if (this.AllChecked) {
    list.forEach(element => {
     element.isChecked = false;
    });
    this.selectedData = [];
   } else {
    list.forEach(element => {
     element.isChecked = true;
     if (this.selectedData.indexOf(element.goods_id) < 0) {
      this.selectedData.push(element.goods_id);
     }
    });
    console.log(this.selectedData);
   }
  },

数组删除

vue+vant-UI框架实现购物车的复选框全选和反选功能

代码

//数组删除
  remove(arr, val) {
   var index = arr.indexOf(val);
   if (index > -1) {
    arr.splice(index, 1);
   }
  }

总结

以上所述是小编给大家介绍的vue+vant-UI框架实现购物车的复选框全选和反选功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
关于javascript DOM事件模型的两件事
Jul 22 Javascript
使用按钮控制以何种方式打开新窗口的属性介绍
Dec 17 Javascript
js借助ActiveXObject实现创建文件
Sep 29 Javascript
jquery css 设置table的奇偶行背景色示例
Jun 03 Javascript
jQuery使用empty()方法删除元素及其所有子元素的方法
Mar 26 Javascript
jQuery通过Ajax返回JSON数据
Apr 28 Javascript
详解js产生对象的3种基本方式(工厂模式,构造函数模式,原型模式)
Jan 09 Javascript
微信小程序 Buffer缓冲区的详解
Jul 06 Javascript
详解使用jest对vue项目进行单元测试
Sep 07 Javascript
JS实现盒子拖拽效果
Feb 06 Javascript
es6函数name属性功能与用法实例分析
Apr 18 Javascript
javascript实现前端分页效果
Jun 24 Javascript
Vue通过WebSocket建立长连接的实现代码
Nov 05 #Javascript
原生js实现随机点名功能
Nov 05 #Javascript
element-ui 文件上传修改文件名的方法示例
Nov 05 #Javascript
vue keep-alive 动态删除组件缓存的例子
Nov 04 #Javascript
javascript如何实现create方法
Nov 04 #Javascript
关于vue里页面的缓存详解
Nov 04 #Javascript
vue2.0 获取从http接口中获取数据,组件开发,路由配置方式
Nov 04 #Javascript
You might like
用PHP读取超大文件的实例代码
2012/04/01 PHP
php三维数组去重(示例代码)
2013/11/26 PHP
PHP中读取文件的8种方法和代码实例
2014/08/05 PHP
Laravel中使用自己编写类库的3种方法
2015/02/10 PHP
浅谈php中include文件变量作用域
2015/06/18 PHP
十分钟打造AutoComplete自动完成效果代码
2009/12/26 Javascript
锋利的jQuery 要点归纳(二) jQuery中的DOM操作(下)
2010/03/23 Javascript
javascript 冒泡排序 正序和倒序实现代码
2010/12/14 Javascript
javaScript 利用闭包模拟对象的私有属性
2011/12/29 Javascript
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
2013/01/29 Javascript
JavaScript实现文字与图片拖拽效果的方法
2015/02/16 Javascript
javascript判断并获取注册表中可信任站点的方法
2015/06/01 Javascript
jQuery基于ajax实现星星评论代码
2015/08/07 Javascript
JavaScript手机振动API
2016/06/11 Javascript
js HTML5多图片上传及预览实例解析(不含前端的文件分割)
2016/08/26 Javascript
关于Javascript回调函数的一个妙用
2016/08/29 Javascript
jQuery过滤选择器用法示例
2016/09/12 Javascript
使用jQuery实现鼠标点击左右按钮滑动切换
2017/08/04 jQuery
python爬取安居客二手房网站数据(实例讲解)
2017/10/19 Javascript
layer.open回调获取弹出层参数的实现方法
2019/09/10 Javascript
基于python中staticmethod和classmethod的区别(详解)
2017/10/24 Python
Python实现发送与接收邮件的方法详解
2018/03/28 Python
python调用c++ ctype list传数组或者返回数组的方法
2019/02/13 Python
关于pytorch处理类别不平衡的问题
2019/12/31 Python
Python selenium爬取微博数据代码实例
2020/05/22 Python
python 爬取小说并下载的示例
2020/12/07 Python
保护环境的建议书
2014/03/12 职场文书
小学生新年寄语
2014/04/03 职场文书
完整版商业计划书
2014/09/15 职场文书
学校党的群众路线教育实践活动对照检查材料
2014/09/24 职场文书
学校法制宣传日活动总结
2014/11/01 职场文书
学生不参加考试检讨书
2015/02/19 职场文书
2015政治思想表现评语
2015/03/25 职场文书
西安事变观后感
2015/06/12 职场文书
九年级英语教学反思
2016/02/15 职场文书
Python中tkinter的用户登录管理的实现
2021/04/22 Python