欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue?watch監(jiān)聽使用的幾種方法

 更新時間:2022年12月22日 10:31:25   作者:script~  
watch是由用戶定義的數(shù)據(jù)監(jiān)聽,當監(jiān)聽的屬性發(fā)生改變就會觸發(fā)回調(diào),這項配置在業(yè)務(wù)中是很常用。在面試時,也是必問知識點,一般會用作和computed進行比較。那么本文就來帶大家從源碼理解watch的工作流程,以及依賴收集和深度監(jiān)聽的實現(xiàn)

一、watch使用的幾種方法

1、 通過 watch 監(jiān)聽 msg 數(shù)據(jù)的變化。

watch: {
    msg(oldValue, newValue) {
        console.log(oldValue)
        console.log(newValue)
    }
}

2、通過 watch 監(jiān)聽 obj數(shù)據(jù)的變化。(深度監(jiān)聽 deep)

data() {
    return {
        obj: {
            'name': "趙",
            'age': 18
        },
    }
},
watch: {
    obj: {
        handler(oldValue,newVal) {
             console.log(oldValue)
             console.log(newValue)
        },
        deep: true  // 深度監(jiān)聽
    }
}

3、通過 watch 監(jiān)聽 data 數(shù)據(jù)的變化,數(shù)據(jù)發(fā)生變化時,執(zhí)行 change 方法

watch: {
    data: 'change' // 值可以為methods的方法名
},
methods: {
    change(oldVal,newVal){
   console.log(oldVal,newVal)
  }
}

二、watch中的immediate與handler和deep屬性

1、immediate屬性

使用watch時有一個特點,就是當值第一次綁定時,不會執(zhí)行監(jiān)聽函數(shù),只有值發(fā)生改變時才會執(zhí)行。如果我們需要在最初綁定值的時候也執(zhí)行函數(shù),則就需要用到immediate屬性。

2、handler屬性

watch中需要具體執(zhí)行的方法

3、deep屬性

當需要監(jiān)聽一個對象的改變時,普通的watch方法無法監(jiān)聽到對象內(nèi)部屬性的改變,此時就需要deep屬性對對象進行深度監(jiān)聽,數(shù)組字符串一般不需要

data() {
    return {
        obj: {
            'name': "王",
            'age': 18
        },
    }
},
watch: {
    obj: {
        // 執(zhí)行方法
        handler(oldValue,newVal) {
             console.log(oldValue)
             console.log(newValue)
        },
        deep: true, // 深度監(jiān)聽
        immediate: true  // 第一次改變就執(zhí)行
    }
   // 如果只需要監(jiān)聽對象中的一個屬性值,則可以做以下優(yōu)化:使用字符串的形式監(jiān)聽對象屬性:
    'obj.name': {
        // 執(zhí)行方法
        handler(oldValue,newVal) {
             console.log(oldValue)
             console.log(newValue)
        },
        deep: true, // 深度監(jiān)聽
        immediate: true  // 第一次改變就執(zhí)行
    }
}

到此這篇關(guān)于Vue watch監(jiān)聽使用的幾種方法的文章就介紹到這了,更多相關(guān)Vue watch監(jiān)聽內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 在vue3中動態(tài)加載遠程組件的流程步驟

    在vue3中動態(tài)加載遠程組件的流程步驟

    在一些特殊的場景中(比如低代碼、減少小程序包體積、類似于APP的熱更新),我們需要從服務(wù)端動態(tài)加載.vue文件,然后將動態(tài)加載的遠程vue組件渲染到我們的項目中,今天這篇文章我將帶你學會,在vue3中如何去動態(tài)加載遠程組件,感興趣的小伙伴跟著小編一起來看看吧
    2024-08-08
  • vue+vant使用圖片預(yù)覽功能ImagePreview的問題解決

    vue+vant使用圖片預(yù)覽功能ImagePreview的問題解決

    這篇文章主要介紹了vue+vant使用圖片預(yù)覽功能ImagePreview的問題解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • VUE3中watch監(jiān)聽使用實例詳解

    VUE3中watch監(jiān)聽使用實例詳解

    watch函數(shù)用來偵聽特定的數(shù)據(jù)源,并在回調(diào)函數(shù)中執(zhí)行副作用,下面這篇文章主要給大家介紹了關(guān)于VUE3中watch監(jiān)聽使用的相關(guān)資料,需要的朋友可以參考下
    2022-06-06
  • vue項目拍照或上傳圖片并實現(xiàn)轉(zhuǎn)化為base64格式

    vue項目拍照或上傳圖片并實現(xiàn)轉(zhuǎn)化為base64格式

    這篇文章主要介紹了vue項目拍照或上傳圖片并實現(xiàn)轉(zhuǎn)化為base64格式方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • vue使用highcharts自定義圖例點擊事件

    vue使用highcharts自定義圖例點擊事件

    這篇文章主要為大家詳細介紹了vue使用highcharts自定義圖例點擊事件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 基于Vue開發(fā)數(shù)字輸入框組件

    基于Vue開發(fā)數(shù)字輸入框組件

    本文通過實例代碼給大家介紹了基于Vue開發(fā)數(shù)字輸入框組件,需要的朋友可以參考下
    2017-12-12
  • vue中路由重定向redirect問題

    vue中路由重定向redirect問題

    這篇文章主要介紹了vue中路由重定向redirect問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • vue前端實現(xiàn)導出頁面為word的兩種方法代碼

    vue前端實現(xiàn)導出頁面為word的兩種方法代碼

    在前端開發(fā)中我們常常需要將頁面頁面為word文件,這篇文章主要給大家介紹了關(guān)于vue前端實現(xiàn)導出頁面為word的兩種方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-04-04
  • 在vue中把含有html標簽轉(zhuǎn)為html渲染頁面的實例

    在vue中把含有html標簽轉(zhuǎn)為html渲染頁面的實例

    今天小編就為大家分享一篇在vue中把含有html標簽轉(zhuǎn)為html渲染頁面的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • 關(guān)于electron-vue打包后運行白屏的解決方案

    關(guān)于electron-vue打包后運行白屏的解決方案

    這篇文章主要介紹了關(guān)于electron-vue打包后運行白屏的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10

最新評論