Vue提供了computed計(jì)算屬性來(lái)處理響應(yīng)式數(shù)據(jù)的變化,computed是基于它的依賴(lài)關(guān)系緩存 computed 是基于響應(yīng)式依賴(lài)進(jìn)行緩存的,只有在相關(guān)響應(yīng)式依賴(lài)發(fā)生改變時(shí)才會(huì)重新計(jì)算。當(dāng)計(jì)算屬性訪(fǎng)問(wèn)的響應(yīng)式依賴(lài)發(fā)生改變時(shí),computed 會(huì)重新計(jì)算并返回新的結(jié)果。傳統(tǒng)的計(jì)算屬性可以通過(guò)單一的依賴(lài)屬性來(lái)計(jì)算結(jié)果,但如果依賴(lài)屬性很多,怎么辦呢?vue提供了computed多個(gè)的寫(xiě)法,讓我們一起來(lái)看看吧。
先來(lái)看一下單一依賴(lài)屬性的例子:
data () {
return {
firstName: 'Tom',
lastName: 'Hanks'
}
},
computed: {
fullName () {
return `${this.firstName} ${this.lastName}`
}
}
這里的computed只依賴(lài)于firstName和lastName兩個(gè)屬性,返回fullname。但現(xiàn)實(shí)中可能存在很多個(gè)屬性都需要計(jì)算,此時(shí)computed多個(gè)依賴(lài)屬性就顯得十分有用了。
下面是computed多個(gè)的寫(xiě)法示例:
data () {
return {
firstName: 'Tom',
lastName: 'Hanks',
age: 50
}
},
computed: {
fullName () {
return `${this.firstName} ${this.lastName}`
},
fullNameWithAge () {
return `${this.fullName} - ${this.age}`
}
}
這里computed依賴(lài)于三個(gè)屬性,返回含有年齡的fullname。
computed多個(gè)可以非常方便地處理多重依賴(lài)關(guān)系和復(fù)雜的計(jì)算。
以上就是vue computed多個(gè)的介紹,希望對(duì)大家能有所幫助。