简易购物车

文章目录

  • 简易购物车
    • v-model双向数据绑定 && 表单提交
    • 计算属性computed
    • v-for渲染数据和标签
    • 添加和删除功能

效果图:

v-model双向数据绑定 && 表单提交

<form @submit.prevent="submit"><label for="inputText">商品名:</label><input class="inputText" type="text" v-model="tempGoods.goods"><label for="inputText">购买数量:</label><input class="inputText" type="number" v-model="tempGoods.count"><button>添加</button>
</form>

注意点如下

  1. form标签里写了@submit.prevent=“submit”,button里面就不需要再写了@click=“submit”

  2. 购买数量是数值,type=“number"

  3. 可以用一个对象来接收表单里填写的数据,实际开发时,大多数都会使用对象的形式来传输数据。看看JSON数据格式就知道了。

     tempGoods: {goods: "",price: 8,//价格固定,写死为8元/个count: 0,},
    

计算属性computed

<h1>总价:{{totalPrice}}</h1>

注意点如下

不要写成这个样子

<h1 v-model="totalPrice">总价:{{totalPrice}}</h1>

返回totalPrice值

computed: {totalPrice() {let sum=0;for (var i = 0; i < this.goodsList.length; i++) {sum += this.goodsList[i].price * this.goodsList[i].count;}return sum;}}
  1. computed里的totalPrice要写成函数的形式
  2. 必须用一个临时变量sum接收totalPrice的值
  3. 计算totalPrice也可以用forEach循环
  4. 如果是将sum写为了this.totalPrice,则会出现如下错误

v-for渲染数据和标签

        <ul><li v-for="(item,index) in goodsList">//item和index顺序不能写反商品名:{{goodsList[index].goods+" "}} 价格:{{goodsList[index].price+" "}}元/个<button @click="decrease(index)">- 1</button><span>数量:{{goodsList[index].count}}</span><button @click="increase(index)">+ 1</button></li></ul>

添加和删除功能

添加功能:通过表单拿到的数据:将整个对象追加到要渲染的数据goodsList中

//添加要购买的商品
submit() {          //通过push函数将表单数据,追加到自己的渲染页面的数据   this.goodsList.push({goods: this.tempGoods.goods.toString(),price: this.tempGoods.price,count: this.tempGoods.count,})},//goodsList数据渲染页面的数据goodsList: [{goods: "雪梨",price: 2,count: 1,}, {goods: "糍粑",price: 5,count: 1,}, {goods: "冰糖",price: 9,count: 1,},]

删除功能:从数组中删除数据

//减少预购买的商品数量
decrease(i) {this.goodsList[i].count--;if (this.goodsList[i].count <= 0) {this.goodsList.splice(i, 1);//通过splice函数删除数据,移除购物车里,购买数量为0的商品}}

看了b站上的视频,一个简易购物车的视频,感觉挺有意思的,心想挺简单的,刚好可以复习一下Vue3的知识点,就试着敲了一下,发现有些知识点快忘了,发文记录一下自己碰到的问题,。下面的连接里有详细讲解,小伙伴感兴趣的可以看一下原版视频,跟着敲一下,收获会更大哟。

B站教学视频

Vue3简易购物车--添加和删除商品,计算购买商品总价相关推荐

  1. 计算购买商品总金额的程序

    计算购买商品总金额的程序 ​ 学习Java的过程中,我在书上看到了一个例题,设计一个计算购买商品总金额的程序.书上的代码在我看来并不是很好,因为它的数据是被定死的,那么我们就来改进一下书上的代码,将其 ...

  2. jQuery实现PC端商城购物车模块基本功能(每个商品的小计和合计都会根据添加和删除的操作来动态计算)

    jQuery实现PC端商城购物车模块基本功能 先上效果图: 因为主要是想练习jQuery的使用,所以页面CSS部分比较简陋,有需要的话,大家在参考代码时,可以自己再完善下CSS部分的代码,让购物车页面 ...

  3. 原生js实现购物车添加删除商品、计算价格功能

    购物车 功能需求: 根据数据创建购物车内容: 实现购物车添加商品功能: 实现购物车商品数量的增加.减少: 实现购物车商品的删除功能: 购物车的全选功能: 无货商品不可修改数量.不计入总价: 底部计算总 ...

  4. 购物车案例模块(全选,增减商品数量,修改商品小计,计算总计和面额,删除商品,选中商品添加背景)

    一. 全选按钮分析: 里面3个小的复选框按钮(j-checkbox)选中状态(checked)跟着全选按钮(checkall)走. 因为checked是复选框的固有属性,此时我们需要利用prop()方 ...

  5. Vue.js 实现简易购物车(商品的增加删除,价格的小计和总计)

    使用方法 : toFixed(2) 保留俩位小数 splice(index,howmany) 删除商品 index 规定添加删除的位置 ,howmany 删除几个 border-collapse: c ...

  6. 创建购物车类,模拟购物车功能 1)添加商品到购物车(输入商品的编号和数量) 2)删除商品(删除购物车中的指定购物项) 3) 修改商品(修改商品的数量)4)显示所购买的商品信息(按商品的总价进行升序显

    import java.util.Objects;/*** @Author: 廾匸* @Date: 2020/11/18 18:32* @Description: 商品类* @version: 1.0 ...

  7. vue3仿写简易购物车

    这是一个按着千锋kerwin老师的视频写的简易购物车,用vue3写的,软件用vscode,详细视频资源见链接 引入vue3的地址 <script type="text/javascri ...

  8. Android 中编写一个简易购物车,商品包括商品名称,单价,数量,可以对商品进行增删改查功能。(ArrayList,SQLite)

    Android 中编写一个简易购物车,商品包括商品名称,单价,数量,可以对商品进行增删改查功能.(ArrayList,SQLite) 布局(activity_main.xml): <?xml v ...

  9. 宜立方商城—— 购物车增加、删除、修改数量、删除选中商品和清空购物车的实现

    1.  购物车的实现 1.1. 功能分析 1.购物车是一个独立的表现层工程. 2.添加购物车不要求登录.可以指定购买商品的数量. 3.展示购物车列表页面 4.修改购物车商品数量 5.删除购物车商品 模 ...

最新文章

  1. 是否可以人为修改发表时间
  2. OpenLayers事件处理Event.js(七)
  3. 阿里云上测试服务器的搭建
  4. python基础语法教程:行与缩进
  5. 8148和8127中的ezsdk和dvrsdk
  6. html点击波,Material Design风格按钮点击波动画效果
  7. 【客户故事】借助钉钉宜搭,奶茶店也开始用黑科技管理门店了
  8. 除了 Tensorflow、PyTorch ,还有哪些深度学习框架值得期待?
  9. JDK各个版本的新特性jdk1.5-jdk8
  10. VS中一点正则表达式使用心得
  11. 黑马程序员 Python学习笔记之变量
  12. 重装系统(windows系列:win10,win11专业版;Linux系列:Ubuntu18.04,22.04LTS安装)即装机必备软件汇总
  13. 用Python写糖豆人小游戏 你学“废”了么?
  14. E575: viminfo: Illegal starting char in line:
  15. 腾讯互娱技术总监张正:《天涯明月刀》后台技术创新
  16. 【ZF】论文相似度检测 免费论文检测
  17. 模糊系统—模糊数学简单概念
  18. SQL Server连接其他服务器
  19. vue项目利用vue-video-player实现视频兼容IOS和安卓放大播放
  20. Cocos Creator 2.3.3 更新说明,效率即是一切!

热门文章

  1. 大数据Impala系列之初识Impala
  2. 微信小程序-组件的生命周期
  3. 图神经网络时间序列预测,神经网络预测未来数据
  4. centos虚拟机调皮了
  5. matlab实现图像DCT变换
  6. pixhawk飞控板的硬件构成
  7. 【空指针异常,也不全是。】
  8. 让你最快速地改善代码质量的 20 条编程规范
  9. 蓝桥杯包子凑数java解析,蓝桥杯之包子凑数
  10. CSU2020期中测试模拟题1 问题 B: 小帅要缴税