久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

Vue實(shí)現(xiàn)計(jì)算器計(jì)算效果

瀏覽:149日期:2022-12-05 10:23:12

本文實(shí)例為大家分享了Vue實(shí)現(xiàn)計(jì)算器計(jì)算效果的具體代碼,供大家參考,具體內(nèi)容如下

Vue實(shí)現(xiàn)計(jì)算器計(jì)算效果

<!DOCTYPE html><html> <head> <meta charset='utf-8'> <meta http-equiv='X-UA-Compatible' content='IE=edge'> <meta name='viewport' content='width=device-width,initial-scale=1.0'> <script src='http://www.baoyu77737.com/js/vue.js'></script> <title>compare</title> <style type='text/css'> *{ padding: 0; margin: 0; box-sizing: border-box; } body{ background-color: #000000; } .panle{ border: 1px solid #5f5f5f; width: 100vw; height: 29vh; font-size: 3.8125rem; color: #FFFFFF; text-align: right; position: relative; } .curr{ display: block; position: absolute; width: inherit; bottom: 0; font-size: 3.5rem; } .operation{ display: block; position: absolute; width: inherit; bottom: 80px; font-size: 2.875rem; } .prev{ font-size: 2.875rem; display: block; position: absolute; width: inherit; bottom: 8rem; } .keyboad{ display: flex; flex-flow: row wrap; margin: 0 calc((8vw - 16px) / 2); } .key{ display: inline-block; border: 1px solid #333; width: 23vw; height: 23vw; border-radius: 50%; text-align: center; font-size: 30px; line-height: 23vw; margin: 2px; background-color: #616161; color: #ffffff; cursor: pointer; outline: none; border: none; box-shadow: 0 9px #999; } .key:active { box-shadow: 0 5px #666; transform: translateY(4px); } .key:last-child{ border-radius: 30%; flex-grow: 1; margin: 0; } .highlight{ background-color: #e77919; } </style> </head> <body> <div id='app'> <div class='panle'> <span class='prev'>{{prevNum}}</span> <span class='operation'>{{operation}}</span> <span class='curr'>{{currNum}}</span> </div> <div class='keyboad'> <div @click='clear'>AC</div> <div @click='back'><-</div> <div class='key highlight'>#</div> <div @click='except'>/</div> <div class='key'>7</div> <div class='key'>8</div> <div class='key'>9</div> <div @click='ride'>*</div> <div class='key'>4</div> <div class='key'>5</div> <div class='key'>6</div> <div @click='reduce'>-</div> <div class='key'>1</div> <div class='key'>2</div> <div class='key'>3</div> <div @click='add'>+</div> <div class='key'>0</div> <div class='key'>.</div> <div @click='result'>=</div> </div> </div> <script type='text/javascript'> let vm = new Vue({ el:'#app', data(){ return{ operation:’’, prevNum:’’, currNum:’’, keyboard:[], arr:[], res:’’ } }, mounted() { this.keyboard = document.querySelectorAll(’div[class=key]’); Array.from(this.keyboard, key => key.addEventListener(’click’,this.getVal)) }, methods:{ getVal(e){ this.currNum += e.target.innerHTML; this.arr.push(e.target.innerHTML); }, clear(){ this.prevNum = this.operation = this.currNum = ’’; }, back(){ this.arr.splice(-1,1) this.currNum = this.arr.join(’’) }, add(){ this.prevNum = this.currNum; this.currNum = ’’; this.operation = ’+’; }, reduce(){ this.prevNum = this.currNum; this.currNum = ’’; this.operation = ’-’; }, ride(){ this.prevNum = this.currNum; this.currNum = ’’; this.operation = ’*’; }, except(){ this.prevNum = this.currNum; this.currNum = ’’; this.operation = ’/’; }, result(){ switch(this.operation){ case’+’: this.res = Number(this.currNum) + Number(this.prevNum); break; case’-’: this.res = Number(this.prevNum) - Number(this.currNum); break; case’*’: this.res = Number(this.prevNum) * Number(this.currNum); break; case’/’: this.res = Number(this.prevNum) / Number(this.currNum); break; } this.clear(); this.currNum = this.res; this.arr = []; } } }) </script> </body></html>

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 嘉荫县| 应城市| 景洪市| 泰来县| 甘洛县| 兴宁市| 资兴市| 凤凰县| 怀集县| 临安市| 化德县| 聂拉木县| 蕲春县| 如东县| 赫章县| 九江县| 杭锦后旗| 巴林左旗| 镇康县| 论坛| 宜丰县| 广宁县| 眉山市| 新竹县| 常熟市| 兴山县| 定安县| 蓬莱市| 高要市| 阜宁县| 枣阳市| 德清县| 平陆县| 清徐县| 股票| 玛纳斯县| 西安市| 方城县| 平顶山市| 闻喜县| 荔波县|