Vue实现小购物车功能


Posted in Vue.js onDecember 21, 2020

本文实例为大家分享了Vue实现小购物车功能的具体代码,供大家参考,具体内容如下

本人还在初级学习阶段,有很多不足之处,希望能指出错误,一起进步

HTML代码块

<body>
 <div id="app">
 <div v-if="books.length">
 <table>
  <thead>
  <tr>
   <th></th>
   <th>书籍名称</th>
   <th>出版日期</th>
   <th>价格</th>
   <th>购买数量</th>
   <th>操作</th>
  </tr>
  </thead>

  <tbody>
  <tr v-for="(itme,index) in books">
   <td>{{itme.id}}</td>
   <td>{{itme.name}}</td>
   <td>{{itme.date}}</td>
   <!-- showPrice过滤器 -->
   <td>{{itme.price | showPrice}}</td>
   <td>
   <!-- 动态绑定disabled,当数量小于1时 禁止点击按钮-->
   <button @click="decrement(index)" :disabled="itme.count <= 1">-</button>
   {{itme.count}}
   <button @click="increment(index)">+</button>
   </td>
   <td><button @click="Handle(index)">移除</button></td>
  </tr>
  </tbody>
 </table>
 <h2>总价格:{{totalPrice | showPrice}}</h2>
 </div>
 <h2 v-else>购物车为空</h2>
 </div>
</body>

css代码块

table{
 border: 1px solid #e9e9e9;
 border-collapse: collapse;
 border-spacing: 0;
}
th,td{
 padding: 8px 16px;
 border: 1px solid #e9e9e9;
 text-align: left;
}
th{
 background: #f7f7f7;
 color: #5c6b77;
 font-weight: 600;
}

Vue.js代码块

const app = new Vue({
 el:'#app',
 data:{
 books:[
  { 
  
  id:1,
  name:'《算法议论》',
  date:'2001-1',
  price:85.00,
  count:1
 },
 { 
  id:2,
  name:'《编程珠玑》',
  date:'2002-1',
  price:65.00,
  count:1
 },
 { 
  id:3,
  name:'《Unix编程艺术》',
  date:'2000-1',
  price:59.00,
  count:1
 },
 { 
  id:4,
  name:'《代码大全》',
  date:'2005-1',
  price:135.00,
  count:1
 },
 ]
 },

 /**
 * 使用普通方法
 */
 methods:{
 //获取小数点的方法
 // getFinalPrice(price){
 // return '¥' + price.toFixed(2);
 // }

 //点击事件
 increment(index){
  this.books[index].count++;
 },
 decrement(index){
  this.books[index].count--;
 },
 Handle(index){
  this.books.splice(index,1);
 }
 },
 computed:{
 totalPrice(){
  let totalPrice = 0;
  for(let i = 0; i < this.books.length; i++){
  totalPrice += this.books[i].price * this.books[i].count;
  }
  return totalPrice;
 }
 },
 /**
 * 使用过滤器获取小数点
 */
 filters:{
 showPrice(price){
  return '¥' + price.toFixed(2);
 }
 }
})

效果如图:

Vue实现小购物车功能

还有很多不足之处,希望大家能指出。

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

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

Vue.js 相关文章推荐
如何在vue中使用HTML 5 拖放API
Jan 14 Vue.js
如何管理Vue中的缓存页面
Feb 06 Vue.js
详解Vue的sync修饰符
May 15 Vue.js
vue2实现provide inject传递响应式
May 21 Vue.js
HTML+VUE分页实现炫酷物联网大屏功能
May 27 Vue.js
详解Vue router路由
Nov 20 Vue.js
前端vue+express实现文件的上传下载示例
Feb 18 Vue.js
Vue中Object.assign清空数据报错的解决方案
Mar 03 Vue.js
vue使用wavesurfer.js解决音频可视化播放问题
Apr 04 Vue.js
vue3引入highlight.js进行代码高亮的方法实例
Apr 08 Vue.js
vue判断按钮是否可以点击
Apr 09 Vue.js
vue递归实现树形组件
Jul 15 Vue.js
vue监听滚动事件的方法
Dec 21 #Vue.js
vue el-upload上传文件的示例代码
Dec 21 #Vue.js
vue 在单页面应用里使用二级套嵌路由
Dec 19 #Vue.js
vue中如何添加百度统计代码
Dec 19 #Vue.js
vue 导航守卫和axios拦截器有哪些区别
Dec 19 #Vue.js
Vue——解决报错 Computed property &quot;****&quot; was assigned to but it has no setter.
Dec 19 #Vue.js
Vue实现手机号、验证码登录(60s禁用倒计时)
Dec 19 #Vue.js
You might like
外媒评选出10支2020年最受欢迎的Dota2战队
2021/03/05 DOTA
海河写的 Discuz论坛帖子调用js的php代码
2007/08/23 PHP
php设计模式 Chain Of Responsibility (职责链模式)
2011/06/26 PHP
PHP URL参数获取方式的四种例子
2014/02/28 PHP
php使用curl代理实现抓取数据的方法
2017/02/03 PHP
JavaScript 基于原型的对象(创建、调用)
2009/10/16 Javascript
extjs之去除s.gif的影响
2010/12/25 Javascript
javascript+canvas实现刮刮卡抽奖效果
2015/07/29 Javascript
jquery选择器简述
2015/08/31 Javascript
分享使用AngularJS创建应用的5个框架
2015/12/05 Javascript
微信小程序 UI布局常用技巧整理总结
2016/12/05 Javascript
深入学习jQuery中的data()
2016/12/22 Javascript
js指定步长实现单方向匀速运动
2017/07/17 Javascript
浅谈MUI框架中加载外部网页或服务器数据的方法
2018/01/31 Javascript
使用RxJS更优雅地进行定时请求详析
2019/06/02 Javascript
JS中数据结构与算法---排序算法(Sort Algorithm)实例详解
2019/06/17 Javascript
vue 开发企业微信整合案例分析
2019/12/02 Javascript
swiper自定义分页器的样式
2020/09/14 Javascript
[04:12]第二届DOTA2亚洲邀请赛选手传记-Newbee.Sccc
2017/04/03 DOTA
python3简单实现微信爬虫
2015/04/09 Python
在Python中处理字符串之ljust()方法的使用简介
2015/05/19 Python
Python获取linux主机ip的简单实现方法
2016/04/18 Python
Python2与Python3的区别点整理
2019/12/12 Python
python开发实例之python使用Websocket库开发简单聊天工具实例详解(python+Websocket+JS)
2020/03/18 Python
Python 炫技操作之合并字典的七种方法
2020/04/10 Python
Web前端绘制0.5像素的几种方法
2017/08/11 HTML / CSS
Qoo10台湾站:亚洲领先的在线市场
2018/05/15 全球购物
阿里巴巴Oracle DBA笔试题答案-备份恢复类
2013/11/20 面试题
法院实习人员自我鉴定
2013/09/26 职场文书
保安的辞职报告怎么写
2014/01/20 职场文书
反腐倡廉标语
2014/06/24 职场文书
销售人员求职信
2014/07/22 职场文书
趵突泉导游词
2015/02/03 职场文书
中学后勤工作总结2015
2015/07/22 职场文书
离婚协议书格式范本
2016/03/18 职场文书
MySQL系列之一 MariaDB-server安装
2021/07/02 MySQL