极乐门资源网 Design By www.ioogu.com
本文实例为大家分享了vue实现购物车加减的具体代码,供大家参考,具体内容如下
通常我们会在模板中绑定表达式,模板是用来描述视图结构的。如果模板中的表达式存在过多的逻辑,模板会变得臃肿不堪,维护变得非常困难。因此,为了简化逻辑,当某个属性的值依赖于其他属性的值时,我们可以使用计算属性。
那么什么是计算属性呢?
计算属性就是当其依赖属性的值发生变化是,这个属性的值会自动更新,与之相关的DOM部份也会同步自动更新。
实现的效果图如下:
我是使用了bootstrap跟Vue去完成这个效果的。
首先导入包:
<link rel="stylesheet" href="css/bootstrap.css" /> <script type="text/javascript" src="/UploadFiles/2021-04-02/vue.js">接着是布局样式:
<div id="app"> <div class="container"> <table class="table table-bordered table-hover"> <tr> <td> <input type="checkbox" v-model="checkAll" @click="selectAll" /> </td> <td> 商品名称 </td> <td> 商品价格 </td> <td> 商品数量 </td> <td> 商品总额 </td> <td> 操作 </td> </tr> <tr v-for="(item,index) in listInfo"> <td> <input type="checkbox" :value="item.id" v-model="checkItem" @change="selectOne" /> </td> <td>{{item.shopName}}</td> <td>{{item.shopPrice}}</td> <td> <button class="btn btn-default" @click="reduce(index)">-</button> <input type="text" v-model="item.shopCount" /> <button class="btn btn-default" @click="add(index)">+</button> </td> <td> {{item.shopPrice*item.shopCount}} </td> <td> <button class="btn btn-warning" @click="del(index)">删除</button> </td> </tr> </table> <p class="text-right"> 金额总计:{{sum}} </p> <p class="text-right"> 商品数量:{{count}} </p> <hr /> <form> <div class="form-group"> <input class="form-control" placeholder="商品名称" v-model="shopName" /> </div> <div class="form-group"> <input class="form-control" placeholder="商品价格" v-model = "shopPrice"/> </div> <div class="form-group"> <button class="btn btn-primary" type="button" @click="addInfo">增加</button> </div> </form> </div> </div>最后是方法:
<script> new Vue({ el:"#app", data:{ listInfo:[ {id:1,shopName:"男装1",shopPrice:1000,shopCount:0}, {id:2,shopName:"男装2",shopPrice:2000,shopCount:0}, {id:3,shopName:"男装3",shopPrice:3000,shopCount:0}, {id:4,shopName:"男装4",shopPrice:4000,shopCount:0}, {id:5,shopName:"男装5",shopPrice:5000,shopCount:0}, ], shopName:"", shopPrice:"", checkItem:[], checkAll:false }, methods:{ add:function(index){ this.listInfo[index].shopCount++ }, reduce:function(index){ if(this.listInfo[index].shopCount<=0){ this.listInfo[index].shopCount = 0 }else { this.listInfo[index].shopCount-- } }, del:function(index){ this.listInfo.splice(index,1) }, addInfo:function(){ // alert(1) var obj = { id:this.listInfo.length+1, shopName:this.shopName, shopPrice:this.shopPrice, shopCount:0 } console.log(obj) this.listInfo.push(obj) }, selectAll:function(){ this.checkItem = [] if(!this.checkAll){ for (var i=0;i<this.listInfo.length;i++) { this.checkItem.push(this.listInfo[i].id) } }else { this.checkItem = [] this.checkAll = false } }, selectOne(){ console.log(this.checkItem) if(this.checkItem.length == this.listInfo.length){ this.checkAll = true }else { this.checkAll = false } } }, computed:{ sum(){ var total = 0 for (var i=0;i<this.listInfo.length;i++) { total+=parseFloat(this.listInfo[i].shopPrice)*parseFloat(this.listInfo[i].shopCount) } return total }, count:function(){ var total = 0 for (var i=0;i<this.listInfo.length;i++) { total+=parseInt(this.listInfo[i].shopCount) } return total } } }) </script>通过以上的代码即可实现简单的购物车加减与增加删除!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
vue,购物车
极乐门资源网 Design By www.ioogu.com
极乐门资源网
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
极乐门资源网 Design By www.ioogu.com
暂无vue实现购物车加减的评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年11月16日
2024年11月16日
- 群星《闪光的夏天 第5期》[320K/MP3][79.35MB]
- 秀兰玛雅.1999-友情人【大旗】【WAV+CUE】
- 小米.2020-我想在城市里当一个乡下人【滚石】【FLAC分轨】
- 齐豫.2003-THE.UNHEARD.OF.CHYI.3CD【苏活音乐】【WAV+CUE】
- 黄乙玲1986-讲什么山盟海誓[日本东芝版][WAV+CUE]
- 曾庆瑜1991-柔情陷阱[台湾派森东芝版][WAV+CUE]
- 陈建江《享受男声》DTS-ES6.1【WAV】
- 群星《闪光的夏天 第5期》[FLAC/分轨][392.38MB]
- 徐小凤《三洋母带》1:1母盘直刻[WAV+CUE][981M]
- 王菲1995《菲靡靡之音》[香港首版][WAV+CUE][1G]
- 《双城之战》主题小游戏现已上线 扮演金克丝探索秘密基地
- 《霍格沃茨之遗》PS5Pro画面对比:光追性能显著提升
- 《怪猎荒野》PS5Pro主机版对比:B测性能都不稳定
- 黄宝欣.1992-黄宝欣金装精选2CD【HOMERUN】【WAV+CUE】
- 群星.1996-宝丽金流行爆弹精丫宝丽金】【WAV+CUE】