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 相关文章推荐
图片自动缩小 点击放大
Jul 07 Javascript
Jquey拖拽控件Draggable使用方法(asp.net环境)
Sep 28 Javascript
JQGrid的用法解析(列编辑,添加行,删除行)
Nov 08 Javascript
JQuery中基础过滤选择器用法实例分析
May 18 Javascript
Javascript的表单验证-提交表单
Mar 18 Javascript
javascript基本语法
May 31 Javascript
jquery Easyui Datagrid实现批量操作(编辑,删除,添加)
Feb 20 Javascript
jQuery查找dom的几种方法效率详解
May 17 jQuery
Javascript实现找不同色块的游戏
Jul 17 Javascript
基于bootstrop常用类总结(推荐)
Sep 11 Javascript
ng-events类似ionic中Events的angular全局事件
Sep 05 Javascript
用node.js写一个jenkins发版脚本
May 21 Javascript
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文件操作的详细诠释
2013/06/21 PHP
codeigniter教程之上传视频并使用ffmpeg转flv示例
2014/02/13 PHP
yii2中dropDownList实现二级和三级联动写法
2017/04/26 PHP
Swoole扩展的6种模式深入详解
2021/03/04 PHP
html+javascript实现可拖动可提交的弹出层对话框效果
2013/08/05 Javascript
JS将数字转换成三位逗号分隔的样式(示例代码)
2014/02/19 Javascript
鼠标左键单击冲突的问题解决方法(防止冒泡)
2014/05/14 Javascript
javascript DIV实现跟随鼠标移动
2020/03/19 Javascript
Angular2学习教程之组件中的DOM操作详解
2017/05/28 Javascript
jquery实现楼层滚动效果
2018/01/01 jQuery
基于vue打包后字体和图片资源失效问题的解决方法
2018/03/06 Javascript
JS简单实现查看文档创建日期、修改日期和文档大小的方法示例
2018/04/08 Javascript
Map与WeakMap类型在JavaScript中的使用详解
2020/11/18 Javascript
在Python中使用zlib模块进行数据压缩的教程
2015/06/26 Python
使用Turtle画正螺旋线的方法
2017/09/22 Python
python创建列表和向列表添加元素的实现方法
2017/12/25 Python
Python基于lxml模块解析html获取页面内所有叶子节点xpath路径功能示例
2018/05/16 Python
Python多线程同步---文件读写控制方法
2019/02/12 Python
Python多版本开发环境管理工具介绍
2019/07/03 Python
python自动循环定时开关机(非重启)测试
2019/08/26 Python
python应用文件读取与登录注册功能
2019/09/23 Python
Anaconda的安装及其环境变量的配置详解
2020/04/22 Python
virtualenv介绍及简明教程
2020/06/23 Python
澳大利亚Rockwear官网:女子瑜伽、健身和运动服
2021/01/26 全球购物
精细化工应届生求职信
2013/11/17 职场文书
生产副总岗位职责
2013/11/28 职场文书
助人为乐表扬信范文
2014/01/14 职场文书
工程承包协议书
2014/04/22 职场文书
领导干部群众路线剖析材料
2014/10/09 职场文书
2014年财务个人工作总结
2014/12/08 职场文书
亲属关系公证书样本
2015/01/23 职场文书
2015年银行员工工作总结
2015/04/24 职场文书
读完《骆驼祥子》的观后感!
2019/07/05 职场文书
读《方与圆》有感:交友方圆有度
2020/01/14 职场文书
多属性、多分类MySQL模式设计
2021/04/05 MySQL