欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue計(jì)算屬性實(shí)現(xiàn)成績(jī)單

 更新時(shí)間:2021年08月08日 16:27:42   作者:風(fēng)塵DX  
這篇文章主要為大家詳細(xì)介紹了Vue計(jì)算屬性實(shí)現(xiàn)成績(jī)單,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

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

代碼如下:

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>成績(jī)單統(tǒng)計(jì)</title>
  <script src="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>學(xué)科</th>
     <th>分?jǐn)?shù)</th>
    </tr>
    <tr>
     <td>語(yǔ)文</td>
     <td>
      <input type="text" name="" id="" value="" v-model.number="Chinese" />
     </td>
    </tr>
    <tr>
     <td>數(shù)學(xué)</td>
     <td>
      <input type="text" name="" id="" value="" v-model.number="Math" />
     </td>
    </tr>
    <tr>
     <td>英語(yǔ)</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>

當(dāng)我改變語(yǔ)文,數(shù)學(xué)·,英語(yǔ)的成績(jī),總分和平均分會(huì)隨著實(shí)時(shí)變化,這就是Vue計(jì)算屬性的特點(diǎn)。

Vue計(jì)算屬性的傳參

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

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Evaluate</title>
  <script src="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>

注意:

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

計(jì)算屬性的getter和setter

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

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title>Computed</title>
  <script src="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>

計(jì)算屬性與方法的區(qū)別

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

計(jì)算屬性的特點(diǎn)如下:

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

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue組件發(fā)布成npm包

    vue組件發(fā)布成npm包

    平常使用Vue開(kāi)發(fā)時(shí),一個(gè)項(xiàng)目中多個(gè)地方需要用到的相同組件通常我們會(huì)封裝為一個(gè)公共組件,所以我們可以將封裝好的組件打包發(fā)布至npm,本文主要介紹了vue組件發(fā)布成npm包,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • vue3中的render函數(shù)里定義插槽和使用插槽

    vue3中的render函數(shù)里定義插槽和使用插槽

    這篇文章主要介紹了vue3中的render函數(shù)里定義插槽和使用插槽方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 關(guān)于uniapp的高級(jí)表單組件mosowe-form

    關(guān)于uniapp的高級(jí)表單組件mosowe-form

    這篇文章主要介紹了關(guān)于uniapp的高級(jí)表單組件mosowe-form,由于一些表單標(biāo)簽改來(lái)改去比較繁瑣,重復(fù)性很多,且樣式布局啥的幾乎萬(wàn)變不離其中,為了偷懶,開(kāi)發(fā)了mosowe-form及mosowe-table兩款高級(jí)組件,需要的朋友可以參考下
    2023-04-04
  • vue3一個(gè)元素如何綁定兩個(gè)或多個(gè)事件

    vue3一個(gè)元素如何綁定兩個(gè)或多個(gè)事件

    這篇文章主要介紹了vue3一個(gè)元素如何綁定兩個(gè)或多個(gè)事件問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 在vue-cli搭建的項(xiàng)目中增加后臺(tái)mock接口的方法

    在vue-cli搭建的項(xiàng)目中增加后臺(tái)mock接口的方法

    這篇文章主要介紹了在vue-cli搭建的項(xiàng)目中增加后臺(tái)mock接口的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • Nuxt.js的路由跳轉(zhuǎn)操作(頁(yè)面跳轉(zhuǎn)nuxt-link)

    Nuxt.js的路由跳轉(zhuǎn)操作(頁(yè)面跳轉(zhuǎn)nuxt-link)

    這篇文章主要介紹了Nuxt.js的路由跳轉(zhuǎn)操作(頁(yè)面跳轉(zhuǎn)nuxt-link),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • vue中表格設(shè)置某列樣式、不顯示表頭問(wèn)題

    vue中表格設(shè)置某列樣式、不顯示表頭問(wèn)題

    這篇文章主要介紹了vue中表格設(shè)置某列樣式、不顯示表頭問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • 腳手架(vue-cli)創(chuàng)建Vue項(xiàng)目的超詳細(xì)過(guò)程記錄

    腳手架(vue-cli)創(chuàng)建Vue項(xiàng)目的超詳細(xì)過(guò)程記錄

    用vue-cli腳手架可以快速的構(gòu)建出一個(gè)前端vue框架的項(xiàng)目結(jié)構(gòu),下面這篇文章主要給大家介紹了關(guān)于腳手架(vue-cli)創(chuàng)建Vue項(xiàng)目的超詳細(xì)過(guò)程,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • Vue組件為什么data必須是一個(gè)函數(shù)

    Vue組件為什么data必須是一個(gè)函數(shù)

    這篇文章主要介紹了Vue組件為什么data必須是一個(gè)函數(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • 使用Webpack 搭建 Vue3 開(kāi)發(fā)環(huán)境過(guò)程詳解

    使用Webpack 搭建 Vue3 開(kāi)發(fā)環(huán)境過(guò)程詳解

    這篇文章主要介紹了使用Webpack 搭建 Vue3 開(kāi)發(fā)環(huán)境過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07

最新評(píng)論