vue實(shí)現(xiàn)組件值的累加
本文實(shí)例為大家分享了vue實(shí)現(xiàn)組件值的累加的具體代碼,供大家參考,具體內(nèi)容如下
css代碼:
<style> ? ? ? ? #myLit{ ? ? ? ? ? ? border: 1px solid red; ? ? ? ? ? ? width: 100px; ? ? ? ? ? ? float: left; ? ? ? ? ? ? margin-right: 20px; ? ? ? ? } ? ? ? ? //定義不同的顏色類(lèi) ? ? ? ? .red{ ? ? ? ? ? ? color: red; ? ? ? ? } ? ? ? ? .olive{ ? ? ? ? ? ? color: olive; ? ? ? ? } ? ? ? ? .blue{ ? ? ? ? ? ? color: blue; ? ? ? ? } </style>
html代碼:
<div id="myBtn"> ? ? ? ? <span>點(diǎn)贊總數(shù){{sum}}</span> ? ? ? ? //點(diǎn)贊總數(shù)遞增的按鈕,隱藏該按鈕 ? ? ? ? <button @click="clickSum" id="sumZan">點(diǎn)贊</button> ? ? ? ? <p></p> ? ? ? ?<!-- ? ? ? ? ? ? myfun是自定義函數(shù),命名不能出現(xiàn)大寫(xiě)字母,因?yàn)槭录O(jiān)聽(tīng)器在 DOM 模板中會(huì)被自動(dòng)轉(zhuǎn)換為全小寫(xiě) ? ? ? ? ? ? color是自定義屬性,改變字體顏色 ? ? ? ? ? ? msg是自定義按鈕值 ? ? --> ? ? ? ??? ? <ui-btn @myfun="clickSum" msg="組長(zhǎng)的點(diǎn)贊"></ui-btn> ? ??? ??? ? <ui-btn @myfun="clickSum" color="olive" msg="小小的點(diǎn)贊"></ui-btn> ? ??? ??? ? <ui-btn @myfun="clickSum" color="blue"></ui-btn> ? ? </div>
js代碼:
computed區(qū)別于method最重要的兩點(diǎn)
computed是屬性調(diào)用,而methods是函數(shù)調(diào)用
computed帶有緩存功能,而methods不是
<script src="../dist/vue.min.js"></script> <script> ?? ?// 組件 ? ? Vue.component("ui-btn",{/*ui-btn是自定義標(biāo)簽名*/ ? ? ? ? template: ?` ? ? ? ? ? ? // html結(jié)構(gòu) ? ? ? ? ? ? <div id="myLit" :class="color"> ? ? ? ? ? ? ? ? <p>點(diǎn)贊次數(shù){{count}}</p> ? ? ? ? ? ? ? ? <button @click="countFun">{{msg}}</button> ? ? ? ? ? ? </div> ? ? ? ? `, ? ? ? ? data:function () { ? ? ? ? ? ? return { ? ? ? ? ? ? ? ? // 組件里所要用到的數(shù)據(jù) ? ? ? ? ? ? ? ? count:0, ? ? ? ? ? ? } ? ? ? ? }, ? ? ? ? methods:{ ? ? ? ? ? ? countFun(){ ? ? ? ? ? ? ? ? this.count++; ? ? ? ? ? ? ? ? // 模擬觸發(fā)sumCount函數(shù),這里實(shí)際上就是去觸發(fā)自定義事件 ? ? ? ? ? ? ? ? this.$emit("myfun") ? ? ? ? ? ? } ? ? ? ? }, ? ? ? ? props:{ ? ? ? ? ? ? color:{ ? ? ? ? ? ? ? ? type:String, //類(lèi)型為字符串,若非字符串會(huì)自動(dòng)轉(zhuǎn)換 ? ? ? ? ? ? ? ? default:"red" //默認(rèn)值 ? ? ? ? ? ? }, ? ? ? ? ? ? msg:{ ? ? ? ? ? ? ? ? type:String, ? ? ? ? ? ? ? ? default:"我的點(diǎn)贊" ? ? ? ? ? ? } ? ? ? ? } ? ? }) ? ? // 實(shí)例 ? ? var appBtn=new Vue({ ? ? ? ? el:"#myBtn",//作用域,生命周期 ? ? ? ? data:{//數(shù)據(jù) ? ? ? ? ? ? sum:0 ? ? ? ? }, ? ? ? ? computed:{//計(jì)算屬性 ?? ??? ??? ??? ? ? ??? ??? ? }, ? ? ? ? methods:{ ? ? ? ? ? ? clickSum(){ ? ? ? ? ? ? ? ? this.sum++ ? ? ? ? ? ? } ? ? ? ? } ? ? }) </script>
頁(yè)面效果:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Vue3系列之effect和ReactiveEffect?track?trigger源碼解析
這篇文章主要為大家介紹了Vue3系列之effect和ReactiveEffect?track?trigger源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10vue組件vue-treeselect箭頭和叉圖標(biāo)變大問(wèn)題及解決
這篇文章主要介紹了vue組件vue-treeselect箭頭和叉圖標(biāo)變大問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2022-07-07vue+element ui el-tooltip動(dòng)態(tài)顯示隱藏問(wèn)題
這篇文章主要介紹了vue+element ui el-tooltip動(dòng)態(tài)顯示隱藏問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-10-10Vue2.x中利用@font-size引入字體圖標(biāo)報(bào)錯(cuò)的解決方法
今天小編就為大家分享一篇Vue2.x中利用@font-size引入字體圖標(biāo)報(bào)錯(cuò)的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-09-09