vue實(shí)現(xiàn)簡(jiǎn)單實(shí)時(shí)匯率計(jì)算功能
最近在自己摸索vue的使用,因?yàn)橄鄬?duì)于只是去看教程和實(shí)例,感覺(jué)不如自己動(dòng)手寫一個(gè)demo入門來(lái)的快。剛好看到小程序中有一個(gè)簡(jiǎn)單但是很精致的應(yīng)用極簡(jiǎn)匯率,而且它的表現(xiàn)形式和vue的表現(xiàn)形式很像,于是想著自己搞一個(gè)簡(jiǎn)單的應(yīng)用來(lái)試試。
1、第一步是搭好簡(jiǎn)單的Html結(jié)構(gòu)
<div id="demo"> <h1>匯率轉(zhuǎn)換</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、整個(gè)頁(yè)面的邏輯就是將三個(gè)幣種的input都綁定一個(gè)model,v-model可以將這個(gè)數(shù)據(jù)傳到后臺(tái),當(dāng)任意一個(gè)輸入框進(jìn)行輸入的時(shí)候會(huì)根據(jù)js已經(jīng)寫死的匯率計(jì)算出另外幾種幣種的數(shù)字。其中比較關(guān)鍵的是vue的computed的使用以及通過(guò)編寫數(shù)據(jù)的get和set函數(shù)達(dá)到每個(gè)數(shù)據(jù)多項(xiàng)綁定的效果。另外值得一提的是我之前也使用了vue的 $watch來(lái)實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)計(jì)算,不過(guò)在雙向綁定的實(shí)現(xiàn)中發(fā)現(xiàn)還是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、樣式補(bǔ)充
.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; }
因?yàn)槟康囊仓皇菫榱藢懸粋€(gè)小demo,所以簡(jiǎn)單做了一個(gè)樣式,讓頁(yè)面看起來(lái)沒(méi)那么別扭,等有時(shí)間了再優(yōu)化一下頁(yè)面的用戶體驗(yàn)再嘗試一下直接調(diào)用匯率api的數(shù)據(jù)來(lái)實(shí)現(xiàn)計(jì)算。
頁(yè)面分享
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- vue實(shí)現(xiàn)商品加減計(jì)算總價(jià)的實(shí)例代碼
- vue中子組件向父組件傳遞數(shù)據(jù)的實(shí)例代碼(實(shí)現(xiàn)加減功能)
- Vue.js計(jì)算屬性computed與watch(5)
- vue2.0中vue-cli實(shí)現(xiàn)全選、單選計(jì)算總價(jià)格的實(shí)例代碼
- Vue.js實(shí)現(xiàn)價(jià)格計(jì)算器功能
- vue2.0 computed 計(jì)算list循環(huán)后累加值的實(shí)例
- Vue.js實(shí)現(xiàn)的計(jì)算器功能完整示例
- vue.js實(shí)現(xiàn)的經(jīng)典計(jì)算器/科學(xué)計(jì)算器功能示例
- Vue入門之?dāng)?shù)量加減運(yùn)算操作示例
相關(guān)文章
Vue3如何解決路由緩存問(wèn)題(響應(yīng)路由參數(shù)的變化)
這篇文章主要介紹了Vue3如何解決路由緩存問(wèn)題(響應(yīng)路由參數(shù)的變化),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03vue打包后出現(xiàn)空白頁(yè)的原因及解決方式詳解
在項(xiàng)目中很多時(shí)候需要用到vue打包成html不需要放在服務(wù)器上就能瀏覽,根據(jù)官網(wǎng)打包出來(lái)的html直接打開是顯示空白,下面這篇文章主要給大家介紹了關(guān)于vue打包后出現(xiàn)空白頁(yè)的原因及解決方式的相關(guān)資料,需要的朋友可以參考下2022-07-07Vue實(shí)現(xiàn)側(cè)邊菜單欄手風(fēng)琴效果實(shí)例代碼
本文通過(guò)一段簡(jiǎn)單的代碼給大家介紹了基于純vue實(shí)現(xiàn)側(cè)邊菜單欄手風(fēng)琴效果,代碼很簡(jiǎn)單,感興趣的朋友跟隨腳本之家小編一起看看吧2018-05-05vue、react等單頁(yè)面項(xiàng)目部署到服務(wù)器的方法及vue和react的區(qū)別
這篇文章主要介紹了vue、react等單頁(yè)面項(xiàng)目部署到服務(wù)器的方法,需要的朋友可以參考下2018-09-09vue項(xiàng)目打包發(fā)布后接口報(bào)405錯(cuò)誤的解決
這篇文章主要介紹了vue項(xiàng)目打包發(fā)布后接口報(bào)405錯(cuò)誤的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07一文教會(huì)你搭建vite項(xiàng)目并配置路由和element-plus
由于項(xiàng)目搭建過(guò)程實(shí)在繁瑣,容易遺忘,每次新建項(xiàng)目還得百度一下怎么搭建,所以寫下本文提醒自己,下面這篇文章主要給大家介紹了關(guān)于搭建vite項(xiàng)目并配置路由和element-plus的相關(guān)資料,需要的朋友可以參考下2022-07-07vue中v-cloak解決刷新或者加載出現(xiàn)閃爍問(wèn)題(顯示變量)
這篇文章主要介紹了vue中v-cloak解決刷新或者加載出現(xiàn)閃爍問(wèn)題(顯示變量) ,需要的朋友可以參考下2018-04-04基于Vue+ElementUI的省市區(qū)地址選擇通用組件
這篇文章主要介紹了基于Vue+ElementUI的省市區(qū)地址選擇通用組件,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11