vue watch普通監(jiān)聽(tīng)和深度監(jiān)聽(tīng)實(shí)例詳解(數(shù)組和對(duì)象)
下面通過(guò)一段代碼給大家介紹vue watch的普通監(jiān)聽(tīng)和深度監(jiān)聽(tīng),具體代碼如下所示:
var vm=new Vue({ data:{ num:1, obj:{ name:'三兒', age:'21', sex:'女' } }, watch:{ num(val, oldVal){ //普通的watch監(jiān)聽(tīng) console.log(“num: “+val, oldVal); }, obj:{ //深度監(jiān)聽(tīng),可監(jiān)聽(tīng)到對(duì)象、數(shù)組的變化 handler(val, oldVal){ console.log(“obj.name: “+val.name, oldVal.name); }, deep:true } } }) vm.num=2 vm.obj.name='二兒'
下面單獨(dú)給大家介紹下vue-watch 深度監(jiān)聽(tīng)
watch:{} 對(duì)象,可監(jiān)聽(tīng)數(shù)據(jù),數(shù)據(jù)發(fā)生變化, 處理函數(shù)
目的: watch雖可監(jiān)聽(tīng),但只是淺監(jiān)聽(tīng),只監(jiān)聽(tīng)數(shù)據(jù)第一層或者第二層,
何為第二層?
let obj = {name: 'xx', child: {age: 11}};
child之后的值就為第二層或者深層
實(shí)現(xiàn)目標(biāo): 如果 要監(jiān)聽(tīng)一個(gè)對(duì)象中的屬性,屬性最高也是第二層了,watch可能監(jiān)聽(tīng)不到,
所有要使用深度監(jiān)聽(tīng):
實(shí)現(xiàn)代碼:
watch: { ' user.phone ' : { handel:function() { //特別注意,不能用箭頭函數(shù),箭頭函數(shù),this指向全局 處理函數(shù) }, deep: true //深度監(jiān)聽(tīng) } }
總結(jié)
以上所述是小編給大家介紹的vue watch普通監(jiān)聽(tīng)和深度監(jiān)聽(tīng)實(shí)例詳解(數(shù)組和對(duì)象),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Vue使用.sync 實(shí)現(xiàn)父子組件的雙向綁定數(shù)據(jù)問(wèn)題
這篇文章主要介紹了Vue使用.sync 實(shí)現(xiàn)父子組件的雙向綁定數(shù)據(jù),需要的朋友可以參考下2019-04-04Vue+Spring Boot簡(jiǎn)單用戶(hù)登錄(附Demo)
這篇文章主要介紹了Vue+Spring Boot簡(jiǎn)單用戶(hù)登錄,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11Ant Design Vue 添加區(qū)分中英文的長(zhǎng)度校驗(yàn)功能
這篇文章主要介紹了Ant Design Vue 添加區(qū)分中英文的長(zhǎng)度校驗(yàn)功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下功能,2020-01-01解決Vue 通過(guò)下表修改數(shù)組,頁(yè)面不渲染的問(wèn)題
下面小編就為大家分享一篇解決Vue 通過(guò)下表修改數(shù)組,頁(yè)面不渲染的問(wèn)題。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-03-03