本文实例为大家分享了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.js的学习教程,请大家点击专题vue.js组件学习教程、Vue.js前端组件学习教程进行学习。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持站长技术。
有很多理由都能说明为什么我们应该写出清晰、可读性好的程序。最重要的一点,程...
这个是我在网上看到的一个有错的ajax 我改正确了,却找不到那个帖子了。 用servl...
前几天有人想做一个多租户的平台,每个租户一个库,可以进行水平扩展,应用端根据登...
前言 配置文件中程序运行中,担当着不可或缺的角色;通常情况下,使用 visual st...
今天更进一步的学习了数据库单表查询涉及条件、分组、排序等 select [ all | dis...
随着 Docker 的使用量越来越大,监控 Docker 容器正在变得更有挑战性。每天都有...
一、前言 PHP和Java都是现在比较流行的二种编程语言。 对于许多新手来说,都会思...
错误类型: Microsoft JET Database Engine (0x80040E10) 至少一个参数没有被指...
背景 ENode是一个CQRS+Event Sourcing架构的开发框架,Event Sourcing需要持久化...
Git 是一个免费且开源的版本控制系统,是目前最为流行的 源代码管理 工具,本篇...