vue中計算屬性(computed)、methods和watched之間的區(qū)別
前言
本文主要給大家介紹了關(guān)于vue中計算屬性(computed)、methods和watched之間的區(qū)別,分享出來供大家參考學(xué)習(xí),下面來一起看看詳細(xì)的介紹:
計算屬性
和普通屬性一樣是在模板中綁定計算屬性的,當(dāng)data中對應(yīng)數(shù)據(jù)發(fā)生改變時,計算屬性的值也會發(fā)生改變。
Methods
methods是方法,只要調(diào)用它,函數(shù)就會執(zhí)行。
相同:兩者達(dá)到的效果是同樣的。
不同:計算屬性是基于它們的依賴進(jìn)行緩存的,只有相關(guān)依賴會發(fā)生改變時才會重新求職。只要相關(guān)依賴未改變,只會返回之前的結(jié)果,不再執(zhí)行函數(shù)。
<p>原始數(shù)據(jù):{{msg}}</p> <p>改變后的數(shù)據(jù):{{changemsg}}</p> var vm=new Vue({ <span style="white-space:pre"> </span>el:"#example", data:{ <span style="white-space:pre"> </span>msg:"hello", <span style="white-space:pre"> </span>}, <span style="white-space:pre"> </span>computed:{ changemsg:function(){ return this.msg.split("").reverse().join(""); }, }
computed屬性 VS watched 屬性
watched屬性:代碼更易于理解,它指定監(jiān)測的值是誰,然后相應(yīng)的改變其他的值。
var vm = new Vue({ el: '#demo', data: { firstName: 'Foo', lastName: 'Bar', fullName: 'Foo Bar' }, watch: { firstName: function (val) { this.fullName = val + ' ' + this.lastName }, lastName: function (val) { this.fullName = this.firstName + ' ' + val } } })
computed屬性:代碼更簡單。
var vm = new Vue({ el: '#demo', data: { firstName: 'Foo', lastName: 'Bar' }, computed: { fullName: function () { return this.firstName + ' ' + this.lastName } } })
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者使用shell能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
Vue3中Element Plus Table(表格)點擊獲取對應(yīng)id方式
這篇文章主要介紹了Vue3中Element Plus Table(表格)點擊獲取對應(yīng)id方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-10-10Element Plus 日期選擇器獲取選中的日期格式(當(dāng)前日期/時間戳格式)
如果想要獲取選中的日期時間就需要通過,Element Plus 日期選擇器?format屬性和value-format屬性,format指定輸入框的格式,value-format?指定綁定值的格式,本篇文章就給大家介紹Element Plus 日期選擇器獲取選中的日期格式(當(dāng)前日期/時間戳格式),感興趣的朋友一起看看吧2023-10-10詳解Vue+axios+Node+express實現(xiàn)文件上傳(用戶頭像上傳)
這篇文章主要介紹了詳解Vue+axios+Node+express實現(xiàn)文件上傳(用戶頭像上傳),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08