vue是前端轻量级MVVM框架,门槛相对较低,今天就用Vue做一个简易版本的购物车实例,我写的是vue2的形式,发表该文章以便记录

一.vue.js官网下载:安装 — Vue.js

二.这里我使用的是直接引入的一个vue.js

三.原理分析和实现

引入vue.js

<script src="js/vue.js"></script>

实例源码

HTML部分

 <div id="app"><form action="#" method="post"><table border="1" style="width: 450px;text-align: center"><tr><td style="width: 8%"><input type="checkbox" v-model="isChecked"></td><td style="width: 30%">产品名称</td><td style="width: 20%">产品单价</td><td style="width: 20%">产品数量</td><td style="width: 30%">金额</td></tr><tr v-for="(item,index) in lists " :key="index"><td><input type="checkbox" v-model="item.isCheck"></td><td>{{item.name}}</td><td >{{item.price}}</td><td><input type="number" min="0"  v-model="item.num" style="width: 40px"></td><td style="color: red;font-weight: bold">¥{{(item.price*item.num).toFixed(2)}}</td></tr><tr><td colspan="5" style="text-align: left;color: red;font-weight: bold ;text-align: center" >总价:    ¥{{getTotal }}</td></tr></table></form></div>

准备下列数据

lists:[{isCheck:false,name:"钢笔",price:2.52,num:2},{isCheck:false,name:"毛笔",price:3.5,num:0},{isCheck:false,name:"雨伞",price:15.6,num:1},{isCheck:false,name:"辣条",price:0.5,num:0},{isCheck:false,name:"宋轶的签名照",price:200,num:2}]

完整实例代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>偷故事的鸭</title><script src="js/vue.js"></script>
</head>
<body><div id="app"><form action="#" method="post"><table border="1" style="width: 450px;text-align: center"><tr><td style="width: 8%"><input type="checkbox" v-model="isChecked"></td><td style="width: 30%">产品名称</td><td style="width: 20%">产品单价</td><td style="width: 20%">产品数量</td><td style="width: 30%">金额</td></tr><tr v-for="(item,index) in lists " :key="index"><td><input type="checkbox" v-model="item.isCheck"></td><td>{{item.name}}</td><td >{{item.price}}</td><td><input type="number" min="0"  v-model="item.num" style="width: 40px"></td><td style="color: red;font-weight: bold">¥{{(item.price*item.num).toFixed(2)}}</td></tr><tr><td colspan="5" style="text-align: left;color: red;font-weight: bold ;text-align: center" >总价:    ¥{{getTotal }}</td></tr></table></form></div><script>const  vm=new  Vue({el:"#app",data(){return{lists:[{isCheck:false,name:"钢笔",price:2.52,num:2},{isCheck:false,name:"毛笔",price:3.5,num:0},{isCheck:false,name:"雨伞",price:15.6,num:1},{isCheck:false,name:"辣条",price:0.5,num:0},{isCheck:false,name:"宋轶的签名照",price:200,num:2}]}},computed:{//计算总价格getTotal(){// 获取lists中isCheck为true的数据let _listsCheck=this.lists.filter(function (val){return val.isCheck===true;})//总价let totalPrice=0for (let i = 0; i < _listsCheck.length; i++) {  //循环获取lists中isCheck为true的数据totalPrice+=_listsCheck[i].num*_listsCheck[i].price//将对应isCheck为true的数量与价格相乘得出总价}return totalPrice.toFixed(2);  //总价保留2为小数},isChecked:{get(){let flag=true;//读取的时候触发this.lists.forEach(el=>{  //迭代lists中为isCheckif(el.isCheck==false){  //当子选项有一个为false时,则全选设置为falseflag=false;}})return flag;},set(val) //当isChecked被赋值的时候会触发这个set方法{if(val) //判断如果全选被选中,则其他的子选项全部选中,如果全选被取消,则其他的所有子选项取消选中{this.lists.map(el=>el.isCheck=true);}else{this.lists.map(el=>el.isCheck=false);}}}}})</script>
</body>
</html>

效果图:

Vue简易购物车实例相关推荐

  1. 用vue和node写的简易购物车

    [新增vue中使用pug模板] 在webpack.config.js引入pug的loader,就可以在vue中使用pug模板. module: {loaders: [{test: /\.vue$/,l ...

  2. 【Vue案例】——实现简易购物车功能

    实现简易购物车功能 静态页面展示 商品详情页 购物车页面 购物车功能的实现 将商品添加至购物车 首先我们要在商品详情页为每一个商品的添加购物车按钮绑定一个点击事件,参数是该商品对象(将商品的所有属性包 ...

  3. web快速入门之基础篇-js:3_3、简易购物车

    目录 一.前言 二.js代码实例演示 1.简易购物车01_数量变化 (1)实例代码 (2)效果演示 2.简易购物车02_数量价格同步 (1)实例代码 (2)效果演示 一.前言 上一篇介绍了DHTML对 ...

  4. vue3仿写简易购物车

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

  5. 用Vue实现购物车组件

    前言 本实例主要介绍利用Vue实现购物车组件,顶部可以切换标签"全部"."好评"和"买过"的数据,标签"全部"下还可以切 ...

  6. Session机制二(简易购物车案例)

    一:案例一(简易购物车) 1.目录结构 2.step1.jsp 1 <%@ page language="java" contentType="text/html; ...

  7. cookie购物车php简单,cookie的优化与购物车实例

    php 的 cookie的优化与购物车实例 一 Cookie 的优化 1.1 一般而言,我们设置cookie是在php中设置 例如: setcookie('testKey1','hello world ...

  8. 01.vue的简单实例

    前段框架vue.js非常热门,每个vue应用都是通过创建vue函数创建新的vue实例开始,首先我们来创建一个简单的vue实例 多手动写写代码,你会发现真的很烦躁 <!DOCTYPE html&g ...

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

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

  10. javaweb练手项目jsp+servlet简易购物车系统

    简易购物车项目 这是一个用intellij IDEA做的简易的javaweb项目,开发环境使用的jdk1.8和tomcat8以及mysql数据库. 1.项目开发准备: 创建github仓库 项目框架搭 ...

最新文章

  1. Swift 教學:如何使用iOS Charts API 製作漂亮的圖表
  2. 人工智能论坛_诚邀共享 | 2020人工智能医疗产业前瞻论坛
  3. NeurIPS 2021六篇杰出论文公布,谷歌工程师11年前论文获时间检验奖
  4. Yii2框架源码分析之如何实现注册和登录
  5. 【 MATLAB 】使用 filter 函数产生给定线性时不变系统的单位阶跃响应
  6. linux必备工具,Linux装机必备工具
  7. python中的私有方法_Python: 内置私有方法
  8. python收集数据发邮件_Python 提取数据库(Postgresql)并邮件发送
  9. 快应用开发教程【01】--环境与调试
  10. mac nginx映射ip和端口_南京课工场IT培训:Nginx虚拟主机 (基于域名 基于端口 基于ip)...
  11. 乐优商城服务器部署_黑马乐优商城19天(全)+源码+配套笔记
  12. 模拟微博登陆,获取微博cookie
  13. Flutter 倒计时
  14. 数学基础知识02——旋转轴、旋转角度和旋转矩阵
  15. C#-初识Hangfire
  16. JSP基本语法、3个编译指令、7个动作指令、9个内置对象
  17. 搓丝机传动装置设计F=10KN【机械设计基础课程设计说明书+7张CAD图纸】
  18. 电子产品长时间不充电导致无法开机、故障、充不满电等问题(如kindle:电池+叹号)
  19. 旧笔记本装linux系统

热门文章

  1. 新华三:竞奔不息,永立潮头
  2. 如何用C语言编写字母游戏,怎么样用C语言编写一个小游戏?
  3. 佳博热敏打印机修改ip工具_佳博打印机修改ip教程本教程适用于80系列打印机及3150,9035打印.doc...
  4. 多家多平台拿走的AD封装库Altium-3D封装库+超全原理图库含51+STM32库
  5. Oracle学习资料汇集
  6. 【新星计划】你真的了解计算机病毒吗?
  7. lenovo L480 进入bios_利用微星主板自带的 M-Flash BIOS工具升级BIOS
  8. 一名Java高级工程师需要学什么?
  9. 操作系统实验报告 实验3存储管理实验(答案全)
  10. 怎么用wps做区域分布图_wps演示制作漂亮的组织结构图