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 相关文章推荐
[Web]防止用户复制页面内容和另存页面的方法
Feb 06 Javascript
JavaScript 创建对象和构造类实现代码
Jul 30 Javascript
学习ExtJS form布局
Oct 08 Javascript
HTML DOM的nodeType值介绍
Mar 31 Javascript
js实现简单的网页换肤效果
Jan 18 Javascript
解决vue组件中使用v-for出现告警问题及v for指令介绍
Nov 11 Javascript
微信小程序自定义轮播图
Nov 04 Javascript
JS/jQuery实现简单的开关灯效果【案例】
Feb 19 jQuery
让 babel webpack vue 配置文件支持智能提示的方法
Jun 22 Javascript
详解React 条件渲染
Jul 08 Javascript
vant-ui框架的一个bug(解决切换后onload不触发)
Nov 11 Javascript
详解Vue 的异常处理机制
Nov 30 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
zf框架的校验器使用使用示例(自定义校验器和校验器链)
2014/03/13 PHP
php使用curl存储cookie的示例
2014/03/31 PHP
typecho插件编写教程(五):核心代码
2015/05/28 PHP
详解在PHP的Yii框架中使用行为Behaviors的方法
2016/03/18 PHP
Yii2实现让关联字段支持搜索功能的方法
2016/08/10 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
2018/05/28 PHP
学习js所必须要知道的一些
2007/03/07 Javascript
javascript 框架小结 个人工作经验
2009/06/13 Javascript
jQuery 技巧小结
2010/04/02 Javascript
javascript 二分法(数组array)
2010/04/24 Javascript
细说浏览器特性检测(2)-通用事件检测
2010/11/05 Javascript
javascript实现上传图片并预览的效果实现代码
2011/04/11 Javascript
js判断输入是否为数字的具体实例
2013/08/03 Javascript
jQuery封装的屏幕居中提示信息代码
2016/06/08 Javascript
jQuery 3.0 的 setter和getter 模式详解
2016/07/11 Javascript
用angular实现多选按钮的全选与反选实例代码
2017/05/23 Javascript
使用elementUI实现将图片上传到本地的示例
2018/09/04 Javascript
vue封装可复用组件confirm,并绑定在vue原型上的示例
2019/10/31 Javascript
在Python的Django框架中生成CSV文件的方法
2015/07/22 Python
在Mac OS系统上安装Python的Pillow库的教程
2015/11/20 Python
Python基于tkinter模块实现的改名小工具示例
2017/07/27 Python
python中子类调用父类函数的方法示例
2017/08/18 Python
Python使用getpass库读取密码的示例
2017/10/10 Python
Flask实现图片的上传、下载及展示示例代码
2018/08/03 Python
Python 判断图像是否读取成功的方法
2019/01/26 Python
Python3中的bytes和str类型详解
2019/05/02 Python
Python分布式进程中你会遇到的问题解析
2019/05/28 Python
python自动提取文本中的时间(包含中文日期)
2020/08/31 Python
CSS3 重置iphone浏览器按钮input,select等表单元素的默认样式
2014/10/11 HTML / CSS
美国家居装饰店:Pier 1
2019/09/04 全球购物
澳大利亚领先的在线礼品网站:Gifts Australia
2020/08/15 全球购物
《凡卡》教学反思
2014/04/09 职场文书
运动会的口号
2014/06/09 职场文书
2015年检察院个人工作总结
2015/05/20 职场文书
2019下半年英语教师的教学工作计划(3篇)
2019/09/25 职场文书
redis requires ruby version2.2.2的解决方案
2021/07/15 Redis