久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

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

Vue計算屬性實現(xiàn)成績單

瀏覽:4日期:2023-02-16 14:54:17

本文實例為大家分享了Vue計算屬性實現(xiàn)成績單,供大家參考,具體內(nèi)容如下

代碼如下:

<!DOCTYPE html><html> <head> <meta charset='utf-8'> <title>成績單統(tǒng)計</title> <script src='http://www.gepszalag.com/bcjs/js/vue.js' type='text/javascript' charset='utf-8'></script> <style type='text/css'> .gridtable{ font-family:verdana, arial, sans-serif; font-size:11px; color:#333333; border-width: 1px; border-color:#666666; border-collapse: collapse; } .gridtable th{ border-width: 1px; padding:8px; border-style:solid; border-color:#666666; background-color: #dedede; } .gridtable td{ border-width: 1px; padding:8px; border-style:solid; border-color:#666666; background-color: #ffffff; } </style> </head> <body> <div id='app'> <table class='gridtable'> <tr> <th>學科</th> <th>分數(shù)</th> </tr> <tr> <td>語文</td> <td> <input type='text' name='' id='' value='' v-model.number='Chinese' /> </td> </tr> <tr> <td>數(shù)學</td> <td> <input type='text' name='' id='' value='' v-model.number='Math' /> </td> </tr> <tr> <td>英語</td> <td> <input type='text' name='' id='' value='' v-model.number='English' /> </td> </tr> <tr> <td>總分</td> <td> <input type='text' name='' id='' value='' v-model.number='sum' /> </td> </tr> <tr> <td>平均分</td> <td> <input type='text' name='' id='' value='' v-model.number='average' /> </td> </tr> </table> </div> <script> var vm=new Vue({ el:'#app', data:{ Chinese:100, Math:100, English:60 }, computed:{ sum:function(){ return this.Chinese+this.Math+this.English; }, average:function(){ return Math.round(this.sum/3); } }, }) </script> </body></html>

Vue計算屬性實現(xiàn)成績單

當我改變語文,數(shù)學·,英語的成績,總分和平均分會隨著實時變化,這就是Vue計算屬性的特點。

Vue計算屬性的傳參

計算屬性本質(zhì)是一個方法,但是通常被當作一個屬性來使用,一般不加()。但在實際開發(fā)中,如果需要給計算屬性中的方法傳參,就需要使用閉包傳參的方法。

<!DOCTYPE html><html> <head> <meta charset='utf-8'> <title>Evaluate</title> <script src='http://www.gepszalag.com/bcjs/js/vue.js' type='text/javascript' charset='utf-8'></script> <div id='app'> {{add(2)}} </div> <script type='text/javascript'> var vm =new Vue({ el:'#app', data:{ number:1 }, computed:{ add(){ return function(index){ return this.number+index; } } } }) </script> </head> <body> </body></html>

注意:

計算屬性本身不能像方法一樣在括號里填寫參數(shù)來達到傳參的目的,需要在該方法體里寫真正的方法,來接受參數(shù)。 同理,計算屬性方法體參數(shù)可省略,即本例子中add(){}和add(index){}均可計算屬性的getter和setter

計算屬性通常用來獲取數(shù)據(jù)(根據(jù)data的變化而變化),所以其默認只有g(shù)etter,但需要時,Vue.js也提供setter功能。set方法與get方法先后順序無關(guān),并且set方法接受的參數(shù)為get方法的返回值。

<!DOCTYPE html><html> <head> <meta charset='utf-8' /> <title>Computed</title> <script src='http://www.gepszalag.com/bcjs/js/vue.js' type='text/javascript' charset='utf-8'></script> </head> <body> <div id='app'> firstName:<input type='text' name='' id='' value='' v-model='first'/> lastName:<input type='text' name='' id='' value='' v-model='last'/> <p>fullName:<input type='text' name='' id='' value='' v-model='fullName'/></p> </div> <script type='text/javascript'> var vm=new Vue({ el:'#app', data:{ first:'Jack', last:'Jones' }, computed:{ fullName:{ get:function(){ return this.first+' '+this.last }, set:function(parameter){ var names=parameter.split(' ') this.first=names[0] this.last=names[names.length-1] } } } }) </script> </body></html>計算屬性與方法的區(qū)別

使用計算屬性的這種方法可以確保代碼只在必要的時刻執(zhí)行,適合處理一些潛在資源密集型工作。但是,如果項目不具有緩存功能,則要使用methods,要根據(jù)實際情況而定。

計算屬性的特點如下:

①當計算屬性的依賴發(fā)生變化時,會立即進行計算,并對計算結(jié)果進行自動更新。②計算屬性的求值結(jié)果會被緩存起來,以方便下次直接使用。③計算屬性適用于執(zhí)行更加復雜的表達式,這些表達式往往太長或需要頻繁的重復使用,所以不能在模板中直接使用。④計算屬性是data對象的一個擴展和增強版本。

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

標簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 亚洲日本国产 | 国产精品精品 | 国产视频一区二区 | 自拍视频在线观看 | 久久在线播放 | 香蕉视频黄色 | 日本精品视频在线观看 | 中文字幕一区二区三区乱码在线 | 99亚洲 | 成人激情视频 | 日韩性视频 | www.av在线播放 | 日韩成人免费 | 狠狠操电影| 逼逼av | 国产精品久久久久久福利一牛影视 | 亚洲乱码一区二区三区在线观看 | 最新中文字幕在线 | 欧美日韩一区二区三区在线观看 | 国产一级一级片 | 久久mm| 久久国内精品 | 欧美日韩成人在线观看 | 2018狠狠干 | 中文av字幕| 亚洲国产一区在线 | 最新日韩av | 色图综合 | 日韩欧美国产一区二区 | 一区二区三区高清 | 精品国产精品三级精品av网址 | 久久久久国产精品一区二区三区 | 一级欧美日韩 | 亚洲精选免费视频 | 蜜桃av在线播放 | 国产精品久久久久久久久久久杏吧 | 91免费版在线观看 | 99精品视频在线 | 欧美精品成人一区二区在线 | 成人在线观看一区 | 午夜寂寞少妇aaa片毛片 |