vue编写简单的购物车功能


Posted in Vue.js onJanuary 08, 2021

使用vue写出简单的购物车,供大家参考,具体内容如下

vue编写简单的购物车功能

代码:

// An highlighted block
<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>Document</title>
 <style>
  .cl{
   border: 1px solid black;
   width: 300px;
   margin: 30px;
   padding: 15px;
  }
 </style>
</head>
<body>
 <div id="app">
  <div class="cl" v-for="(item,index) in items">
   <h4>{{item.sname}}</h4>
   <button @click="item.sum==0?item.sum==0:item.sum--">-</button>
   <span>{{item.sum}}</span>
   <button @click="item.sum++">+</button>
   <span>{{item.sprice}}元/斤</span>
  </div>

  <table>
   <tr>
    <th>选择</th>
    <th>商品名</th>
    <th>商品数量</th>
    <th>商品价格</th>
   </tr>
   <tr v-for="(item,index) in items">
    <td><input type="checkbox" :checked="item.isSelect" @click="item.isSelect=!item.isSelect"></td>
    <td>{{item.sname}}</td>
    <td>{{item.sum}}</td>
    <td>{{item.sprice*item.sum}}</td>
   </tr>
   <tr>
    <td><input type="checkbox" @click="selectProduct(isSelectAll)" :checked="isSelectAll">全选</tf>
    <td>合计</tf>
    <td>{{total.totalNum}}</tf>
    <td>{{total.totalPrice}}</tf>
   </tr>
  </table>
 </div>
 <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
 <script>
  new Vue({
   el:'#app',
   data:{
    items:[
     {
      'sname':'苹果',
      'sum':1,
      'sprice':'10',
     },
     {
      'sname':'香蕉',
      'sum':1,
      'sprice':'12',
     },
     {
      'sname':'橘子',
      'sum':1,
      'sprice':'8',
     },
    ]
   },
   methods:{
    selectProduct:function(_isSelect){
     for(var i=0 ,len=this.items.length;i<len;i++){
      this.items[i].isSelect=!_isSelect;
     }
    },
    
   },
   computed:{
    isSelectAll:function(){
     return this.items.every(function(val){return val.isSelect})
    },
     total:function(){
     var prolist = this.items.filter(function(val){return val.isSelect});
     totalpri = 0;
     totalnum = 0;
     for (var i = 0;i<prolist.length;i++){
      totalpri+=prolist[i].sprice*prolist[i].sum;
      totalnum+=prolist[i].sum
     }
     
     return{totalNum:totalnum,totalPrice:totalpri}
    }
   },
   mounted:function(){
    var _this=this;
    this.items.map(function(item){
     _this.$set(item,'isSelect',false)
    })
   }
  })
 </script>
</body>
</html>

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

Vue.js 相关文章推荐
Vue 的 v-model用法实例
Nov 23 Vue.js
vue打开其他项目页面并传入数据详解
Nov 25 Vue.js
Vue 简单实现前端权限控制的示例
Dec 25 Vue.js
vue keep-alive的简单总结
Jan 25 Vue.js
vue实现轮播图帧率播放
Jan 26 Vue.js
vue-video-player 断点续播的实现
Feb 01 Vue.js
基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件功能
Feb 23 Vue.js
vue实现拖拽进度条
Mar 01 Vue.js
开发一个封装iframe的vue组件
Mar 29 Vue.js
vue实现锚点定位功能
Jun 29 Vue.js
Vue的生命周期一起来看看
Feb 24 Vue.js
vue3不同环境下实现配置代理
May 25 Vue.js
解决vue使用vant轮播组件swipe + flex时文字抖动问题
Jan 07 #Vue.js
vuex的使用和简易实现
Jan 07 #Vue.js
vue watch监控对象的简单方法示例
Jan 07 #Vue.js
vue.js watch经常失效的场景与解决方案
Jan 07 #Vue.js
通过vue.extend实现消息提示弹框的方法记录
Jan 07 #Vue.js
如何在vue-cli中使用css-loader实现css module
Jan 07 #Vue.js
vue3中轻松实现switch功能组件的全过程
Jan 07 #Vue.js
You might like
PHP4实际应用经验篇(4)
2006/10/09 PHP
PHP取余函数介绍MOD(x,y)与x%y
2014/05/15 PHP
php实现的九九乘法口诀表简洁版
2014/07/28 PHP
laravel容器延迟加载以及auth扩展详解
2015/03/02 PHP
Docker配置PHP开发环境教程
2016/12/21 PHP
PHP实现的登录页面信息提示功能示例
2017/07/24 PHP
Laravel框架模型的创建及模型对数据操作示例
2019/05/07 PHP
thinkphp框架类库扩展操作示例
2019/11/26 PHP
OfflineSave离线保存代码再次发布使用说明
2007/05/23 Javascript
IE8 浏览器Cookie的处理
2009/01/31 Javascript
Javascript 自定义类型方法小结
2010/03/02 Javascript
js实现密码强度检验
2017/01/15 Javascript
BootStrap 导航条实例代码
2017/05/18 Javascript
angularjs之$timeout指令详解
2017/06/13 Javascript
基于bootstrap写的一点localStorage本地储存
2017/11/21 Javascript
Node.js进阶之核心模块https入门
2018/05/23 Javascript
基于Angular中ng-controller父子级嵌套的相关属性详解
2018/10/08 Javascript
动态内存分配导致影响Javascript性能的问题
2018/12/18 Javascript
浅谈Vue.js 关于页面加载完成后执行一个方法的问题
2019/04/01 Javascript
VUE脚手架具体使用方法
2019/05/20 Javascript
Vue 动态路由的实现及 Springsecurity 按钮级别的权限控制
2019/09/05 Javascript
浅谈Vue使用Cascader级联选择器数据回显中的坑
2020/10/31 Javascript
用pywin32实现windows模拟鼠标及键盘动作
2014/04/22 Python
Python实现telnet服务器的方法
2015/07/10 Python
Python for Informatics 第11章 正则表达式(一)
2016/04/21 Python
python执行精确的小数计算方法
2019/01/21 Python
Python爬虫学习之翻译小程序
2019/07/30 Python
Django接收post前端返回的json格式数据代码实现
2019/07/31 Python
Python基本语法之运算符功能与用法详解
2019/10/22 Python
HTML5 history新特性pushState、replaceState及两者的区别
2015/12/26 HTML / CSS
工作中的自我评价如何写好
2013/10/28 职场文书
参观接待方案
2014/03/17 职场文书
幼儿园大班评语大全
2014/04/17 职场文书
语文教研活动总结
2014/07/02 职场文书
漫画「请问您今天要来点兔子吗?」最新杂志彩页公开
2022/03/24 日漫
Python识别花卉种类鉴定网络热门植物并自动整理分类
2022/04/08 Python