vue+ElementUI实现订单页动态添加产品数据效果实例代码


Posted in Javascript onJuly 13, 2017

这两天学习了ElementUI基于vue2.0开发学习,这个知识点挺多的,而且很重要,所以,今天添加一点小笔记。

使用vue2.0(ElementUI基于vue2.0)+ElementUI(饿了么出品)实现的在订单页面动态添加产品的效果,并自动计算总价。代码直接保存为html文档,使用浏览器打开即可查看效果。

效果图:

vue+ElementUI实现订单页动态添加产品数据效果实例代码 

vue+ElementUI实现订单页动态添加产品数据效果实例代码

<html>
 <head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
  <!-- 引入element样式 -->
  <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-default/index.css" rel="external nofollow" >
  <title>订单页面</title>
 </head>
 <body>
  <div id="orderTest">



   <el-dialog title="产品库" v-model="dialogTableVisible">
    <el-table :data="list">
    <el-table-column property="name" label="产品名称" width="150"></el-table-column>
    <el-table-column property="price" label="单价" width="200"></el-table-column>
    <el-table-column :context="_self" inline-template label="操作">
     <div>
     <el-button
      size="small"
      @click="choise(row)">
      选择
     </el-button>
     </div>
    </el-table-column>
    </el-table>
   </el-dialog>

   <el-button type="info" icon="view" @click="dialogTableVisible = true">选择产品</el-button>
   <span v-show="checkedNames.length>0" style="font-family: Microsoft YaHei">总价:{{sumPrice}}元</span>
   <el-table :data="checkedNames" v-show="checkedNames.length>0">
    <el-table-column property="name" label="产品名称" width="150"></el-table-column>
    <el-table-column property="price" label="单价" width="200"></el-table-column>
    <el-table-column inline-template label="数量" width="200">
     <el-input-number v-model="row.num" :min="1" :max="10"></el-input-number>
    </el-table-column>
    <el-table-column :context="_self" inline-template label="操作">
     <i class="el-icon-circle-cross" @click="del(row)" title="删除"></i>
    </el-table-column>
   </el-table>


  </div>
 </body>
<!-- 引入vue -->
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <!-- 引入element JS -->
  <script src="https://unpkg.com/element-ui/lib/index.js"></script>
  <script src="http://cdn.bootcss.com/jquery/3.1.1/jquery.js"></script>
  <script type="text/javascript">
   var order = new Vue({
     el: '#orderTest',
     data: {
      dialogTableVisible:false,
      checkedNames: [],
      list:[
        {name:"iphone7",price:5688,num:1},
        {name:"荣耀8",price:2299,num:1},
        {name:"Lumia830",price:1299,num:1}
        ]
     },
     computed:{
      sumPrice:function(){
       var sum = 0 ;
       for(var i=0;i< this.checkedNames.length;i++){
        sum+=this.checkedNames[i].price*this.checkedNames[i].num;
        }
       return sum;
       }
      },
     methods:{
      choise:function(p){
       order.checkedNames.push(p);
      },
      del:function(p){
       order.checkedNames.splice($.inArray(p, order.checkedNames), 1);
      },
     }
    });
  </script>

</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery中的.bind()、.live()和.delegate()之间区别分析
Jun 08 Javascript
js中设置元素class的三种方法小结
Aug 28 Javascript
js返回上一页并刷新代码整理
Dec 21 Javascript
javascript四舍五入函数代码分享(保留后几位)
Dec 10 Javascript
window.onload追加函数使用示例
Mar 03 Javascript
不得不分享的JavaScript常用方法函数集(下)
Dec 25 Javascript
浅析JavaScript Array和string的转换(推荐)
May 20 Javascript
bootstrap实现每隔5秒自动轮播效果
Dec 20 Javascript
js获取json中key所对应的value值的简单方法
Jun 17 Javascript
angularJs复选框checkbox选中进行ng-show显示隐藏的方法
Oct 08 Javascript
小程序多图列表实现性能优化的方法步骤
May 28 Javascript
antd多选下拉框一行展示的实现方式
Oct 31 Javascript
Angular如何引入第三方库的方法详解
Jul 13 #Javascript
详解如何构建Angular项目目录结构
Jul 13 #Javascript
深入理解Vue-cli搭建项目后的目录结构探秘
Jul 13 #Javascript
JS实现弹出下载对话框及常见文件类型的下载
Jul 13 #Javascript
vue开发调试神器vue-devtools使用详解
Jul 13 #Javascript
基于JS代码实现简单易用的倒计时 x 天 x 时 x 分 x 秒效果
Jul 13 #Javascript
浅谈关于axios和session的一些事
Jul 13 #Javascript
You might like
SONY ICF-SW07收音机电路分析
2021/03/02 无线电
MySQL的FIND_IN_SET函数使用方法分享
2012/03/27 PHP
分享一个php 的异常处理程序
2014/06/22 PHP
javascript自动改变文字大小和颜色的效果的小例子
2013/08/02 Javascript
jquery获取颜色在ie和ff下的区别示例介绍
2014/03/28 Javascript
Javascript 构造函数详解
2014/10/22 Javascript
js对象的复制继承实例
2015/01/10 Javascript
Jquery中基本选择器用法实例详解
2015/05/18 Javascript
VueJS全面解析
2016/11/10 Javascript
jQuery Validate验证框架详解(推荐)
2016/12/17 Javascript
3种vue组件的书写形式
2017/11/29 Javascript
对vue中v-on绑定自定事件的实例讲解
2018/09/06 Javascript
vue实现的双向数据绑定操作示例
2018/12/04 Javascript
Vue指令之 v-cloak、v-text、v-html实例详解
2019/08/08 Javascript
详解node.js创建一个web服务器(Server)的详细步骤
2021/01/15 Javascript
[00:12]2018DOTA2亚洲邀请赛 sylar表现SOLO技艺
2018/04/06 DOTA
[51:22]Fnatic vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python实现 多进程导入CSV数据到 MySQL
2017/02/26 Python
Python 2.x如何设置命令执行的超时时间实例
2017/10/19 Python
浅谈用VSCode写python的正确姿势
2017/12/16 Python
运行django项目指定IP和端口的方法
2018/05/14 Python
Python实现的网页截图功能【PyQt4与selenium组件】
2018/07/12 Python
python 监听salt job状态,并任务数据推送到redis中的方法
2019/01/14 Python
Python Collatz序列实现过程解析
2019/10/12 Python
佐卡伊官网:中国知名珠宝品牌
2017/02/05 全球购物
英国日常交易网站:Wowcher
2018/09/04 全球购物
adidas瑞典官方网站:购买阿迪达斯鞋子和运动服
2019/12/11 全球购物
当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
2014/09/09 面试题
What is EJB
2016/07/22 面试题
Hibernate持久层技术
2013/12/16 面试题
音乐学院硕士生的自我评价分享
2013/11/01 职场文书
双创工作实施方案
2014/03/26 职场文书
售房协议书范本2014
2014/10/23 职场文书
2014年幼儿园个人工作总结
2014/11/10 职场文书
2014年小学体育工作总结
2014/12/11 职场文书
大学生村官驻村工作心得体会
2016/01/23 职场文书