话说vue出来之后好像很火的样子,减少了代码量,直接操作数据,还不操纵很繁重的DOM,写完直接打包扔给后台,你想怎么办就怎么办吧!总之来说就是现阶段很火的技术.程度你懂得
vue是什么呢?vue是现在很火的一个前端MVVM框架,它以数据驱动和组件化的思想构建,与angular和react并称前端三大框架。相比angular和react,vue更加轻巧、高性能、也很容易上手。这些都是官方的说法,再核心的或者api直接去vue官网look look吧.那就话不多说,直接上代码,亲测,暂时没问题(友情提示:用的vue版本是2.x.x)
下面就直接来代码吧!最实在...
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>购物车</title> <link rel="stylesheet" href="node_modules/bootstrap/dist/css/bootstrap.css"> <script type="text/javascript" src="js/vue.js"></script> <style type="text/css" media="screen"> a,p,span{ cursor: pointer; } a:visited,a:hover{ text-decoration: none; } .check{ width: 20px; height: 19px; display: inline-block; vertical-align: bottom; background: url("img/check.jpg"); } .isCheck{ background: url("img/checked.png") } .input_pro{ width: 30px; } .pro a{ width: 20px; height:26px; display: inline-block; border:1px solid #ccc; text-align: center; vertical-align: bottom; } .footer p{ float: right; margin-left: 10px; } .footer span{ margin-left: 10px; } </style> </head> <body> <div id="app"> <h4>购物清单</h4> <table class="table"> <thead> <tr> <th><span class="check" :class="{'isCheck':isSelectAll}" @click="selectProduct(isSelectAll)"></span> 全选</th> <th>商品详情</th> <th>数量</th> <th>单价(元)</th> <th>金额(元)</th> <th>操作</th> </tr> </thead> <tbody> <tr v-for="(item,index) in productList"> <td><span class="check" @click="item.select=!item.select" :class="{'isCheck':item.select}"></span></td> <td>{{item.pro_name}}</td> <td class="pro"><a href="javascript:;" @click="item.pro_num--">-</a><input type="text" class="input_pro" v-model="item.pro_num"><a href="javascript:;" @click="item.pro_num++">+</a></td> <td>¥{{item.pro_price}}.00</td> <td>¥{{item.pro_price*item.pro_num}}.00</td> <td><button type="button" @click="removePro(index)">删除</button></td> </tr> </tbody> </table> <div class="footer"> <span><a href="javascript:;" title="" @click="deletePro">删除所选商品</a></span> <span>继续购物</span> <p><a href="javascript:;" class="">去结算</a></p> <p>¥<span>{{getTotal.totalPrice}}</span></p> <p><span>{{getTotal.totalNum}}</span>件商品总计(不含运费):</p> </div> </div> <script type="text/javascript"> new Vue({ el:"#app", data:{ productList:[ { 'pro_name':'项链', 'pro_num':1, 'pro_price':4000 }, { 'pro_name':'手镯', 'pro_num':1, 'pro_price':2000 }, { 'pro_name':'戒指', 'pro_num':1, 'pro_price':8000 }, { 'pro_name':'耳坠', 'pro_num':1, 'pro_price':1000 } ] }, methods:{ //全选与取消全选 selectProduct:function(_isSelect){ for(var i=0;i<this.productList.length;i++){ this.productList[i].select = !_isSelect; } }, //删除单条 removePro:function(index){ this.productList.splice(index,1) }, //删除选中的 deletePro:function(){ this.productList=this.productList.filter(function(item){return !item.select}) } }, mounted:function(){ var _this=this; //为productList添加select(是否选中)字段 this.productList.map(function(item){ _this.$set(item,'select',false); }) }, computed:{ //检测全选 isSelectAll:function(){ return this.productList.every(function (val) { return val.select}); }, //获取总件数和价格 getTotal:function(){ //获取select为true的数据 var _proList=this.productList.filter(function(val){return val.select }),totalPrice=0; for(var i=0;i<_proList.length;i++){ totalPrice+=_proList[i].pro_num*_proList[i].pro_price; } return {totalNum:_proList.length,totalPrice:totalPrice} } } }) </script> </body> </html>
效果图如下:
好吧!简单粗暴,此例子先到这里吧!嘿嘿,有错误及时call me 哦!
相关推荐
Vue入门学习小案例-小王记事本 Vue入门学习小案例-小王记事本 Vue入门学习小案例-小王记事本 Vue入门学习小案例-小王记事本 Vue入门学习小案例-小王记事本 Vue入门学习小案例-小王记事本 Vue入门学习小案例-小王...
Vue-Quill-Editor是一款基于Quill的 Vue.js 富文本编辑器组件,提供了丰富的文本格式化选项,如字体、字号、颜色、列表等,同时支持图片和视频的插入。在Vue3.0环境下使用Vue-Quill-Editor,需要确保组件与新版本的...
vue3-real-admin纯静态后台模板vue3-real-admin纯静态后台模板vue3-real-admin纯静态后台模板vue3-real-admin纯静态后台模板vue3-real-admin纯静态后台模板vue3-real-admin纯静态后台模板vue3-real-admin纯静态后台...
vue3-element-admin 是【有来开源组织】基于 Vue3 + Vite4 + TypeScript + Element-Plus + Pinia 等前端主流技术栈从0到1搭建后台管理系统模板(前后端开源)。 后端是基于 Spring Boot 3.0 、Spring Security 6.0 ...
vue3-element-admin-2.0.1.zip
npm install vue-class-component vue-property-decorator --save-dev 一梭子直接干; 其次,咱来说说它们的区别与联系: vue-property-decorator社区出品;vue-class-component官方出品 vue-class-component提供了...
使用vue2-water-marker组件实现水印预览
uniapp-vue3-vite-windicssuniapp-vue3-vite-windicssuniapp-vue3-vite-windicssuniapp-vue3-vite-windicssuniapp-vue3-vite-windicssuniapp-vue3-vite-windicssuniapp-vue3-vite-windicssuniapp-vue3-vite-...
基于laravel-vue--vux-element的视频投票系统 基于laravel-vue--vux-element的视频投票系统 基于laravel-vue--vux-element的视频投票系统 基于laravel-vue--vux-element的视频投票系统 基于laravel-vue--vux-element...
本篇文章将深入探讨Vue的核心概念之一——`v-model`数据绑定,帮助初学者快速入门。 `v-model`是Vue中的一个指令,用于实现双向数据绑定,它使得视图(View)与模型(Model)之间的数据同步变得简单。这种机制让...
vue vue-seamless-scroll 数据滚动 list 数据量少 时,不运行滚动
(vue-element-admin-master的精简版本),快速搭建后台管理系统,是4.4.0版本。其中包含相匹配版本的node.js安装包,省心啊。首先安装node.js,然后cmd看一下(node -v),成功之后,就可以用vs打开精简版本的vue-...
- **滑动比较**:Vue-image-compare 提供了一个可滑动的层,用户可以通过移动滑块来比较两张图片的不同之处。 - **响应式设计**:该库支持不同设备和屏幕尺寸,确保在各种环境下都能良好工作。 - **自定义样式**:...
在“vue入门小例子”这个项目中,我们可以看到作者通过实践Vue.js的基本特性来学习和理解这个框架。这里我们将深入探讨Vue.js的核心概念和在`TestVUE.html`和`vue.js`这两个文件中可能涉及的知识点。 首先,Vue.js...
vue-admin-template前端页面开发框架,你可以把 vue-element-admin当做工具箱或者集成方案仓库,在 vue-admin-template 的基础上进行二次开发,想要什么功能或者组件就去 vue-element-admin 那里复制过来。...
vue-admin-better是一个基于Vue开发的国内首个纯净的vue3管理后台框架,包含197个文件,其中包括76个JavaScript文件、72个Vue文件、7个JPG图片文件、7个SCSS文件、6个PNG图片文件、5个CSS文件、4个JSON文件和4个SVG...
hslb-vue3-elementplus-admin 登录和找回密码功能实现 hslb-vue3-elementplus-admin 登录和找回密码功能实现hslb-vue3-elementplus-admin 登录和找回密码功能实现hslb-vue3-elementplus-admin 登录和找回密码...
在开发过程中,我们经常需要处理各种打印需求,这正是 `vue-print-nb` 插件的作用所在。`vue-print-nb` 是一个针对 Vue.js 应用程序设计的打印插件,它允许开发者方便地实现页面或组件的打印功能。标题提到的“vue-...
Vue reactive ref v-bind 语法示例演示代码Vue reactive ref v-bind 语法示例演示代码Vue reactive ref v-bind 语法示例演示代码Vue reactive ref v-bind 语法示例演示代码Vue reactive ref v-bind 语法示例演示代码...
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者...