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中通过render函数给子组件设置ref操作
Nov 17 Vue.js
VUE项目实现主题切换的多种方法
Nov 26 Vue.js
vue中利用three.js实现全景图的完整示例
Dec 07 Vue.js
基于vue与element实现创建试卷相关功能(实例代码)
Dec 07 Vue.js
vue实现登录功能
Dec 31 Vue.js
如何在vue 中使用柱状图 并自修改配置
Jan 21 Vue.js
深入了解Vue动态组件和异步组件
Jan 26 Vue.js
vue-element-admin项目导入和导出的实现
May 21 Vue.js
vue Element-ui表格实现树形结构表格
Jun 07 Vue.js
一篇文章学会Vue中间件管道
Jun 20 Vue.js
vue项目proxyTable配置和部署服务器
Apr 14 Vue.js
vue @click.native 绑定原生点击事件
Apr 22 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
ThinkPHP基本的增删查改操作实例教程
2014/08/22 PHP
PHP的Yii框架中移除组件所绑定的行为的方法
2016/03/18 PHP
PHP 5.6.11中CURL模块问题的解决方法
2016/08/08 PHP
PHP设计模式之工厂模式详解
2017/10/24 PHP
laravel 使用事件系统统计浏览量的实现
2019/10/16 PHP
javascript:void(0)的真正含义实例分析
2008/08/20 Javascript
多浏览器支持的右下角浮动窗口
2010/04/01 Javascript
js的写法基础分析
2011/01/17 Javascript
extjs3 combobox取value和text案例详解
2013/02/06 Javascript
JavaScript strike方法入门实例(给字符串加上删除线)
2014/10/17 Javascript
Nodejs学习笔记之Global Objects全局对象
2015/01/13 NodeJs
JS实现屏蔽shift,Ctrl,alt等功能键的方法
2015/06/01 Javascript
javascript 中的 delete及delete运算符
2015/11/15 Javascript
Angularjs分页查询的实现
2017/02/24 Javascript
基于JavaScript实现的折半查找算法示例
2017/04/14 Javascript
Javascript快速实现浏览器系统通知
2017/08/26 Javascript
javascript 中事件冒泡和事件捕获机制的详解
2017/09/01 Javascript
基于JavaScript 实现拖放功能
2019/09/12 Javascript
解决layUI的页面显示不全的问题
2019/09/20 Javascript
玩转python selenium鼠标键盘操作(ActionChains)
2020/04/12 Python
python匿名函数用法实例分析
2019/08/03 Python
详解python中各种文件打开模式
2020/01/19 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
2020/03/10 Python
Dr. Martens马汀博士澳大利亚官网:马丁靴鼻祖
2019/07/02 全球购物
中学生学习生活的自我评价
2013/10/26 职场文书
企划主管岗位职责
2013/12/12 职场文书
社区春季防火方案
2014/06/02 职场文书
建筑安全责任书范本
2014/07/24 职场文书
解除劳动关系协议书范文
2014/09/11 职场文书
2015年安全生产责任书
2015/01/30 职场文书
2015年财务人员工作总结
2015/04/10 职场文书
2015财务年度工作总结范文
2015/05/04 职场文书
人生一定要学会的三样东西:放下、忘记、珍惜
2019/08/21 职场文书
《艾尔登法环》1.03.3补丁上线 碎星伤害调整
2022/04/06 其他游戏
MySQL时区造成时差问题
2022/04/13 MySQL
MySQL数据库事务的四大特性
2022/04/20 MySQL