视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
vue实现简单实时汇率计算功能
2020-11-27 20:26:30 责编:小采
文档
最近在自己摸索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的数据来实现计算。

页面分享

下载本文
显示全文
专题