vue实现简单实时汇率计算功能


Posted in Javascript onJanuary 15, 2017

最近在自己摸索vue的使用,因为相对于只是去看教程和实例,感觉不如自己动手写一个demo入门来的快。刚好看到小程序中有一个简单但是很精致的应用极简汇率,而且它的表现形式和vue的表现形式很像,于是想着自己搞一个简单的应用来试试。

1、第一步是搭好简单的Html结构

<div id="demo">
    <h1>汇率转换</h1>
    <div class="moneyBox"><span>cny</span><input v-model="cny" type="text"><span>人民币¥</span></div>
    <div class="moneyBox"><span>usd</span><input v-model="usd" type="text"><span>美元$</span></div>
    <div class="moneyBox"><span>hkd</span><input v-model="hkd" type="text"><span>港币$</span></div>
  </div>

2、整个页面的逻辑就是将三个币种的input都绑定一个model,v-model可以将这个数据传到后台,当任意一个输入框进行输入的时候会根据js已经写死的汇率计算出另外几种币种的数字。其中比较关键的是vue的computed的使用以及通过编写数据的get和set函数达到每个数据多项绑定的效果。另外值得一提的是我之前也使用了vue的 $watch来实现数据的实时计算,不过在双向绑定的实现中发现还是computed更加适用一些。

var CNY_USD = 6.96;
  var CNY_HKD = 0.90;
  var data={  cny:'100',
        usd:'14.38'  ,
        hkd:'111.53',
      };
  var myVue = new Vue({
   el: '#demo',
   data: data,
   computed: {
     usd:{
       get: function() {
         return (this.cny/CNY_USD).toFixed(2);
       },
       set: function(newValue) {
         this.cny = (newValue*CNY_USD).toFixed(2);
       }
     },
     hkd:{
       get: function() {
         return (this.cny/CNY_HKD).toFixed(2);
       },
       set: function(newValue) {
         this.cny = (newValue*CNY_HKD2Q).toFixed(2);
       }
     }
   }
   })

3、样式补充

.moneyBox{
      font-size: 20px;
      font-family: "微软雅黑";
    }
    .moneyBox input{
      width: 100px;
      height: 24px;
      padding: 0 10px;
      margin: 0 10px;
      border-radius: 5px;
      border: 1px solid #333;
    }

因为目的也只是为了写一个小demo,所以简单做了一个样式,让页面看起来没那么别扭,等有时间了再优化一下页面的用户体验再尝试一下直接调用汇率api的数据来实现计算。

页面分享

vue实现简单实时汇率计算功能

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

Javascript 相关文章推荐
使用mini-define实现前端代码的模块化管理
Dec 25 Javascript
jQuery源码解读之addClass()方法分析
Feb 20 Javascript
JavaScript+html5 canvas绘制缤纷多彩的三角形效果完整实例
Jan 26 Javascript
Bootstrap每天必学之弹出框(Popover)插件
Apr 25 Javascript
vue.js实现价格格式化的方法
May 23 Javascript
基于node.js制作简单爬虫教程
Jun 29 Javascript
JavaScript判断浏览器和hack滚动条的写法
Jul 23 Javascript
基于百度地图api清除指定覆盖物(Overlay)的方法
Jan 26 Javascript
JavaScript中七种流行的开源机器学习框架
Oct 11 Javascript
vue+vant-UI框架实现购物车的复选框全选和反选功能
Nov 05 Javascript
JavaScript 替换所有匹配内容及正则替换方法
Feb 12 Javascript
vue使用element-ui按需引入
May 20 Vue.js
bootstrap——bootstrapTable实现隐藏列的示例
Jan 14 #Javascript
JS轮播图中缓动函数的封装
Nov 25 #Javascript
JavaScript字符串对象
Jan 14 #Javascript
jquery mobile移动端幻灯片滑动切换效果
Apr 15 #Javascript
Easyui笔记2:实现datagrid多行删除的示例代码
Jan 14 #Javascript
jQuery实现select模糊查询(反射机制)
Jan 14 #Javascript
Angular2-primeNG文件上传模块FileUpload使用详解
Jan 14 #Javascript
You might like
php开发过程中关于继承的使用方法分享
2011/06/17 PHP
PHP实现加密的几种方式介绍
2015/02/22 PHP
再推荐十款免费的php开发工具
2015/11/09 PHP
php简单统计在线人数的方法
2016/05/10 PHP
PHP读MYSQL中文乱码的快速解决方法
2016/10/01 PHP
PHP空值检测函数与方法汇总
2017/11/19 PHP
PHP实现负载均衡下的session共用功能
2018/04/17 PHP
php 多个变量指向同一个引用($b = &amp;$a)用法分析
2019/11/13 PHP
比较简单的异步加载JS文件的代码
2009/07/18 Javascript
《JavaScript高级程序设计》阅读笔记(三) ECMAScript中的引用类型
2012/02/27 Javascript
7个JS基础知识总结
2014/03/05 Javascript
JavaScript实现的图像模糊算法代码分享
2014/04/22 Javascript
javascript异步编程代码书写规范Promise学习笔记
2015/02/11 Javascript
javascript删除元素节点removeChild()用法实例
2015/05/26 Javascript
Javascript 是你的高阶函数(高级应用)
2015/06/15 Javascript
实例详解AngularJS实现无限级联动菜单
2016/01/15 Javascript
jquery.validate使用详解
2016/06/02 Javascript
vue.js选中动态绑定的radio的指定项
2017/06/02 Javascript
用vue的双向绑定简单实现一个todo-list的示例代码
2017/08/03 Javascript
vue使用技巧及vue项目中遇到的问题
2018/06/04 Javascript
video.js 一个页面同时播放多个视频的实例代码
2018/11/27 Javascript
微信小程序实现多个按钮的颜色状态转换
2019/02/15 Javascript
JavaScript静态作用域和动态作用域实例详解
2019/06/17 Javascript
[01:45]2014DOTA2 TI预选赛预选赛 战前探营!
2014/05/21 DOTA
Python Web框架Pylons中使用MongoDB的例子
2013/12/03 Python
python 在某.py文件中调用其他.py内的函数的方法
2019/06/25 Python
使用PyTorch实现MNIST手写体识别代码
2020/01/18 Python
html5 css3 动态气泡按钮实例演示
2012/12/02 HTML / CSS
CSS3中各种颜色属性的使用教程
2016/05/17 HTML / CSS
新加坡时尚网上购物:Zalora新加坡
2016/07/26 全球购物
德国专业木制品经销商:Holz-Direkt24
2019/12/26 全球购物
NOTINO英国:在线购买美容和香水
2020/02/25 全球购物
Vrbo西班牙:预订您的度假公寓(公寓、乡村房屋…)
2020/04/27 全球购物
shallow copy和deep copy的区别
2016/05/09 面试题
《惊弓之鸟》教学反思
2016/02/20 职场文书
Nginx反向代理、重定向
2022/04/13 Servers