vue实现购物车列表


Posted in Javascript onJune 30, 2020

本文实例为大家分享了vue实现购物车列表的具体代码,供大家参考,具体内容如下

功能:

  • 删除
  • 单选 全选
  • 增加数量 减少数量
  • 计算总价 计算数量
  • 搜索

代码:

<!DOCTYPE html>
<!DOCTYPE html>
<html>
 <head>
 <meta charset="utf-8">
 <title></title>
 <script src="./js/vue.js"></script>
 </head>
 <body>
 <div id="app">
   筛选:<input type="text" v-model="key">
 <table border="1" cellspacing="0" cellpadding="10">
 <tr>
  <th>
  <input type="checkbox" v-model="all" @change="checkAll()" >
  </th>
  <th>id</th>
  <th>书籍名称</th>
  <th>出版日期</th>
  <th>购买价格</th>
  <th>数量</th>
  <th>操作</th>
 </tr>
 <tr v-for="(item,index) in flist" :key="item.id">
  <td style="text-align: center;"><input type="checkbox" v-model="item.sel" ></td>
  <td>{{item.id}}</td>
  <td>{{item.name}}</td>
  <td>{{item.time}}</td>
  <td>{{item.price|prices}}</td>
  <td><button @click="item.num--" :disabled="item.num==1">-</button>{{item.num}}<button @click="item.num++">+</button></td>
  <td><button @click="delItem(item.id)">移除</button></td>
 </tr>
 <tr><td colspan="7">总价格:{{total.price|prices}} 选择数量:{{total.num}}</td></tr>
 </table>
 </div>
 <script>
 var vm = new Vue({
 el:"#app",
 data:{
     key:"",
  all:true,
  list:[
  {id:1,name:"小红书",time:"2018-8",price:188.99,num:1,sel:true},
  {id:2,name:"小烂熟",time:"2019-8",price:88.9,num:1,sel:true},
  {id:3,name:"小绿树",time:"2017-5",price:133.00,num:1,sel:true},
  {id:4,name:"发生的树",time:"2020-1",price:68.80,num:1,sel:true},
  {id:5,name:"奥古",time:"2015-4",price:555.50,num:1,sel:true },
  ]
 },
 methods:{
     delItem(item){
      var falg=window.confirm("确定要删除吗?");
      if(falg){
       this.list.splice(item-1,1)
      }
      
     },
     checkAll(){
      this.list.forEach(item=>item.sel=this.all)
     }
    },
    watch:{
     list:{
      handler:function(){
       this.all=this.list.every(item=>item.sel)
      },
      deep:true
     }
    },
    computed:{
     total:function(){
      var price=0;
      var num=0;
      this.list.forEach(item=>{
       if(item.sel){
        price+=item.num*item.price
        num+=item.num*1
       
       }
      })
      return ({price,num})
     },
     flist:function(){
      if(this.key===''){return this.list}
  return this.list.filter(item=>item.name.includes(this.key))
     }
    },
    filters:{
     prices:function(val,fix=2){
      val=val.toFixed(fix)
      val=""+val
      return "¥"+val
     }
    },

 
 })
 </script>
 </body>
</html>

vue实现购物车列表

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
使用Javascript和DOM Interfaces来处理HTML
Oct 09 Javascript
jquery插件制作 表单验证实现代码
Aug 17 Javascript
js实现翻页后保持checkbox选中状态的实现方法
Nov 03 Javascript
JS判断是否360安全浏览器极速内核的方法
Jan 29 Javascript
js获取Get值的方法
Sep 29 Javascript
深入理解js中的加载事件
Feb 08 Javascript
详解vue.js全局组件和局部组件
Apr 10 Javascript
vue-cli如何快速构建vue项目
Apr 26 Javascript
easyui datagrid 表格中操作栏 按钮图标不显示的解决方法
Jul 27 Javascript
security.js实现的RSA加密功能示例
Jun 06 Javascript
vue使用一些外部插件及样式的配置代码
Nov 18 Javascript
利用 JavaScript 构建命令行应用
Nov 17 Javascript
vue实现简单图片上传
Jun 30 #Javascript
vue基于better-scroll仿京东分类列表
Jun 30 #Javascript
vue使用better-scroll实现滑动以及左右联动
Jun 30 #Javascript
vue基于better-scroll实现左右联动滑动页面
Jun 30 #Javascript
Postman动态获取返回值过程详解
Jun 30 #Javascript
JS简易计算器实例讲解
Jun 30 #Javascript
如何在postman中添加cookie信息步骤解析
Jun 30 #Javascript
You might like
php的memcached客户端memcached
2011/06/14 PHP
PHP设计模式之迭代器模式的深入解析
2013/06/13 PHP
PHP读取汉字的点阵数据
2015/06/22 PHP
php 实现301重定向跳转实例代码
2016/07/18 PHP
Laravel框架源码解析之反射的使用详解
2020/05/14 PHP
EasyUi tabs的高度与宽度根据IE窗口的变化自适应代码
2010/10/26 Javascript
javascript学习笔记(七) js函数介绍
2012/06/19 Javascript
原生js实现给指定元素的后面追加内容
2013/04/10 Javascript
一个简单的jquery进度条示例
2014/04/28 Javascript
22点关于jquery性能优化的建议
2014/05/28 Javascript
javascript对象的创建和访问
2016/03/08 Javascript
JavaScript中值类型和引用类型的区别
2017/02/23 Javascript
jQuery Tree Multiselect使用详解
2017/05/02 jQuery
详解Vue-Cli 异步加载数据的一些注意点
2017/08/12 Javascript
jQuery EasyUI Layout实现tabs标签的实例
2017/09/26 jQuery
JS实现的JSON数组去重算法示例
2018/04/11 Javascript
微信小程序实现弹出菜单
2018/07/19 Javascript
js中实例与对象的区别讲解
2019/01/21 Javascript
nuxt中使用路由守卫的方法步骤
2019/01/27 Javascript
ECharts地图绘制和钻取简易接口详解
2019/07/12 Javascript
微信小程序scroll-view的滚动条设置实现
2020/03/02 Javascript
使用Python制作获取网站目录的图形化程序
2015/05/04 Python
tensorflow TFRecords文件的生成和读取的方法
2018/02/06 Python
解决pip install xxx报错SyntaxError: invalid syntax的问题
2018/11/30 Python
浅谈keras.callbacks设置模型保存策略
2020/06/18 Python
html5适合移动应用开发的12大特性
2014/03/19 HTML / CSS
使用placeholder属性设置input文本框的提示信息
2020/02/19 HTML / CSS
英国和爱尔兰最大的地毯零售商:Kukoon
2018/12/17 全球购物
九年级数学教学反思
2014/02/02 职场文书
慈善捐赠倡议书
2014/08/30 职场文书
先进工作者申报材料
2014/12/23 职场文书
团组织推优材料
2014/12/29 职场文书
2015年环保局工作总结
2015/05/22 职场文书
红十字会救护培训简讯
2015/07/20 职场文书
使用python创建股票的时间序列可视化分析
2022/03/03 Python
JavaScript parseInt0.0000005打印5原理解析
2022/07/23 Javascript