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中利用three.js实现全景图的完整示例
Dec 07 Vue.js
vue 导航守卫和axios拦截器有哪些区别
Dec 19 Vue.js
vue中封装axios并实现api接口的统一管理
Dec 25 Vue.js
Vue常用API、高级API的相关总结
Feb 02 Vue.js
vue如何使用rem适配
Feb 06 Vue.js
vue中data改变后让视图同步更新的方法
Mar 29 Vue.js
使用vue-element-admin框架从后端动态获取菜单功能的实现
Apr 29 Vue.js
Vue项目打包、合并及压缩优化网页响应速度
Jul 07 Vue.js
vue判断按钮是否可以点击
Apr 09 Vue.js
vue特效之翻牌动画
Apr 20 Vue.js
vue生命周期钩子函数以及触发时机
Apr 26 Vue.js
Vue router配置与使用分析讲解
Dec 24 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
PHP下几种删除目录的方法总结
2007/08/19 PHP
Uncaught exception com_exception with message Failed to create COM object
2012/01/11 PHP
基于PHPExcel的常用方法总结
2013/06/13 PHP
php命令行使用方法和命令行参数说明
2014/04/08 PHP
PHP中SimpleXML函数用法分析
2014/11/26 PHP
thinkPHP5.0框架安装教程
2017/03/25 PHP
让whoops帮我们告别ThinkPHP6的异常页面
2020/03/02 PHP
PhpStorm 2020.3:新增开箱即用的PHP 8属性(推荐)
2020/10/30 PHP
PHP如何解决微信文章图片防盗链
2020/12/09 PHP
jQuery的运行机制和设计理念分析
2011/04/05 Javascript
express的中间件basicAuth详解
2014/12/04 Javascript
Bootstrap每天必学之js插件
2015/11/30 Javascript
Javascript中的Prototype到底是什么
2016/02/16 Javascript
javascript中获取元素标签中间的内容的实现方法
2016/10/08 Javascript
js+div+css下拉导航菜单完整代码分享
2016/12/28 Javascript
jquery实现弹窗(系统提示框)效果
2019/12/10 jQuery
Vue+elementUI实现多图片上传与回显功能(含回显后继续上传或删除)
2020/03/23 Javascript
jQuery 函数实例分析【函数声明、函数表达式、匿名函数等】
2020/05/19 jQuery
通过vue刷新左侧菜单栏操作
2020/08/06 Javascript
Ant Design的可编辑Tree的实现操作
2020/10/31 Javascript
Python使用新浪微博API发送微博的例子
2014/04/10 Python
Python告诉你木马程序的键盘记录原理
2019/02/02 Python
对Python获取屏幕截图的4种方法详解
2019/08/27 Python
Python 内置变量和函数的查看及说明介绍
2019/12/25 Python
深入浅析Python 命令行模块 Click
2020/03/11 Python
基于python生成英文版词云图代码实例
2020/05/16 Python
python实现PDF中表格转化为Excel的方法
2020/06/16 Python
OpenCV图片漫画效果的实现示例
2020/08/18 Python
意大利体育用品和运动服网上商店:Maxi Sport
2019/09/14 全球购物
Alexandre Birman美国官网:亚历山大·伯曼
2019/10/30 全球购物
Delphi工程师笔试题
2013/09/21 面试题
开会迟到检讨书
2014/02/03 职场文书
二手房买卖协议书
2014/04/10 职场文书
求职信模板
2014/05/23 职场文书
劳动仲裁调解书
2015/05/20 职场文书
2015年监理个人工作总结
2015/05/23 职场文书