computed :?
定義: 類似于過(guò)濾器,對(duì)綁定到view的數(shù)據(jù)進(jìn)行處理
get用法:上代碼
computed是對(duì)data中的數(shù)據(jù)進(jìn)行的過(guò)濾谜诫,當(dāng)data中的數(shù)據(jù)發(fā)生變化時(shí)琐旁,監(jiān)聽的屬性也會(huì)變化。也就是當(dāng)firstName或lastName發(fā)生變化猜绣,fullName就會(huì)發(fā)生變化灰殴。
當(dāng)直接對(duì)fullName進(jìn)行賦值時(shí),會(huì)進(jìn)入到fullName的set方法中掰邢。
computed的特點(diǎn):具有緩存性牺陶,當(dāng)監(jiān)聽的數(shù)據(jù)沒(méi)有發(fā)生變化時(shí),數(shù)據(jù)會(huì)取緩存中的辣之,不會(huì)再進(jìn)行計(jì)算掰伸。
watch的用法
定義:是一個(gè)觀察的動(dòng)作
代碼如下
下面是監(jiān)聽復(fù)雜數(shù)據(jù)類型的變化,代碼如下
注意一點(diǎn)監(jiān)聽復(fù)雜數(shù)據(jù)類型的時(shí)候怀估,監(jiān)聽函數(shù)的名字必須是handler狮鸭。否則會(huì)報(bào)錯(cuò)。
oldVal和newVal值一樣的原因是它們索引同一個(gè)對(duì)象/數(shù)組多搀。Vue 不會(huì)保留修改之前值的副本