黑馬前端學(xué)習(xí)筆記(從vue2.0到vue3.0)第四天P53-P73

P53條件渲染指令
???v-if?
原理:每次動(dòng)態(tài)創(chuàng)建或移除元素,實(shí)現(xiàn)元素的顯示和隱藏
?擴(kuò)展 v-if? 后續(xù)可以跟 v-else-if? 最后可以寫(xiě)? v-else
???v-show??
原理:動(dòng)態(tài)為元素添加或移除樣式,來(lái)實(shí)現(xiàn)元素的顯示和隱藏
P55列表渲染指令
v-for
?基礎(chǔ)語(yǔ)法? ** in? list? 操作 **就可以了?
或者 (**,index)in list? index可以看成為數(shù)組下標(biāo)?
這兩個(gè)數(shù)值都是形參 不需要固定寫(xiě) 可以寫(xiě)成index 也可以寫(xiě)成xxx
記得綁定 :key=“id(唯一性)” key的值 只能是字符串或者數(shù)字類型

index? 數(shù)組下標(biāo)沒(méi)有強(qiáng)制綁定的作用
P61 知識(shí)點(diǎn)(只能在vue2.0使用?)
過(guò)濾? this.list.filter(item => item.id !== id)
類似于java的過(guò)濾? ?其中 item 為形參? 形參.id 指的是數(shù)組中的id? 后者id為傳入的id?
過(guò)濾后 會(huì)形成新的數(shù)組?
但 后期都有需要數(shù)據(jù)庫(kù)支持 一般不會(huì)再這邊 做刪除操作 與新增操作?
這小案例我看了看 沒(méi)有手動(dòng)敲
P65 過(guò)濾器(只能在vue2.0使用?)
{{xxx | 過(guò)濾器}} 寫(xiě)法
在new 的VUE中 與data平級(jí)定義? 這叫私有過(guò)濾器
filters:{ } ??????????// 存放過(guò)濾器
a(形參){????????? ?? //過(guò)濾器中一定有返回值
return
}
P66 全局過(guò)濾器
與new vue平級(jí)
Vue.filter(過(guò)濾器的名字,function(形參){})

P68過(guò)濾器特性
1.可以連續(xù)使用過(guò)濾器? |? |? |?
2.過(guò)濾器傳參

p69偵聽(tīng)器
與過(guò)濾器一樣 偵聽(tīng)器 也是寫(xiě)在 new Vue中 與data平級(jí)
需要對(duì)話框綁定 v-model?
watch:{
?綁定方法都會(huì)接收兩個(gè)形參? ?a(新改動(dòng)的值,舊值)
}
應(yīng)用場(chǎng)景一般為? 名字是否被占用? 百度形式下拉框
P71偵聽(tīng)器擴(kuò)展immediate選項(xiàng)
偵聽(tīng)器兩種格式

對(duì)象格式的偵聽(tīng)器格式如下:
watch:{
?a:{
handler(新改動(dòng)的值,舊值){
},
immediate:true? 是否刷新頁(yè)面觸發(fā)一次
}
}
P72偵聽(tīng)器擴(kuò)展deep選項(xiàng)
這個(gè)選項(xiàng)就是解決 偵聽(tīng)器 偵聽(tīng)不到對(duì)象中屬性的變化
麻煩:
watch:{
?a:{
handler(新改動(dòng)的值,舊值){
},
deep:true 深度偵聽(tīng) 對(duì)象變化也能被偵聽(tīng)
}
}
簡(jiǎn)單:
如果要偵聽(tīng)的是對(duì)象的子屬性
watch:{
'a.name'(新值){
}
}