最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

全面總結Vue3.0的多種偵聽方式

 更新時間:2021年10月09日 11:02:13   作者:前端老實人  
Vue提供了一種更通用的方式來觀察和響應當前活動的實例上的數據變動:偵聽屬性,下面這篇文章主要給大家介紹了關于Vue3.0多種偵聽方式的相關資料,需要的朋友可以參考下

偵聽器

雖然計算屬性在大多數情況下更合適,但有時也需要一個自定義的偵聽器。這就是為什么 Vue 通過watch選項提供了一個更通用的方法,來響應數據的變化。當需要在數據變化時執(zhí)行異步或開銷較大的操作時,這個方式是最有用的。

一、wacthEffect

立即執(zhí)行,沒有immediate

偵聽,watchEffect是立即執(zhí)行的,沒有immediate,不需要傳遞偵聽的內容,自動會感知代碼依賴,不需要傳參,只需要傳一個回調函數不能獲取之前的值

如果需要停用偵聽器,可以回調這個偵聽器函數

const stop = watchEffect(()=>{
        // console.log('num:',num.value);
        // console.log('num:',str.value);
      })

二、watch

不會立即執(zhí)行,需要手動開啟immediate

// 指定主要偵聽的值num
      watch(num,(val,oval)=>{
        // val:新值,oval:之前的值
        // console.log(num.value);
        // console.log(val,oval);
      },{//第二個參數obj immediate,deep
      immediate:true//默認就是只有數據改變時才會監(jiān)聽,
      // 第一次創(chuàng)建的時候不會執(zhí)行,設置成true,第一次就會執(zhí)行
      })
  • 偵聽ref的數據源
  • 偵聽reactive數據源 

1.1第一種方式偵聽

//偵聽state下的id,對象數據的變化
      watch(state,(val,oval)=>{
        // console.log('id',val.id,oval);
      },{
        immediate:true,
        deep:true//開啟深度監(jiān)聽,能夠偵聽到對象屬性值的變化
      })

1.2第二種方式偵聽

// 偵聽state.uname
      watch(()=>state.uname,(uname,p)=>{
        //uname新值,p舊值
        console.log(uname,p);
      },{
        immediate:true
      })

1.3偵聽多個數據源

//偵聽多個數據(id,uname)
    //()=>state.id,相當于//object.values(toRefs(state))解構了
     const stop = watch([()=>state.id,()=>state.uname],([id,uname],[oid,oname])=>{
        // id新,oid舊
        console.log('id',id,oid);
        // uname新,oname舊
        console.log('uname',uname,oname);
      })

總結

到此這篇Vue3.0多種偵聽方式的文章就介紹到這了,更多相關Vue3.0偵聽方式內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 詳解Vue中的自定義指令

    詳解Vue中的自定義指令

    這篇文章主要介紹了Vue中的自定義指令的相關資料,幫助大家更好的理解和學習vue框架,感興趣的朋友可以了解下
    2020-12-12
  • vue時間線組件的使用方法

    vue時間線組件的使用方法

    這篇文章主要為大家詳細介紹了vue時間線組件的使用方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • vue3中傳遞路徑參數的限制

    vue3中傳遞路徑參數的限制

    在 Vue 3 里使用路由跳轉到用戶頁并傳遞路徑參數時,存在一些限制和需要注意的方面,下面給大家分享vue3中傳遞路徑參數有什么限制,感興趣的朋友一起看看吧
    2025-03-03
  • vue v-viewer組件使用示例詳解(v-viewer輪播圖)

    vue v-viewer組件使用示例詳解(v-viewer輪播圖)

    這篇文章主要介紹了vue v-viewer組件使用示例詳解(v-viewer輪播圖),本文結合實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-02-02
  • vue中路由的前進和后退問題

    vue中路由的前進和后退問題

    這篇文章主要介紹了vue中路由的前進和后退問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • 深入理解vue-class-component源碼閱讀

    深入理解vue-class-component源碼閱讀

    這篇文章主要介紹了深入理解vue-class-component源碼閱讀,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-02-02
  • 淺談vue中數據雙向綁定的實現原理

    淺談vue中數據雙向綁定的實現原理

    本篇文章主要介紹了淺談vue中數據雙向綁定的實現原理 ,主要使用v-model這個數據雙向綁定,有興趣的可以了解一下
    2017-09-09
  • uniapp寬屏開發(fā)PC端方案及衍生問題解決辦法

    uniapp寬屏開發(fā)PC端方案及衍生問題解決辦法

    在uniapp中進行寬屏開發(fā),主要是指在電腦端(PC端)使用寬屏顯示效果進行應用的開發(fā),這篇文章主要給大家介紹了關于uniapp寬屏開發(fā)PC端方案及衍生問題解決辦法,需要的朋友可以參考下
    2024-03-03
  • Vue Router實現多層嵌套路由的導航的詳細指南

    Vue Router實現多層嵌套路由的導航的詳細指南

    在 Vue 應用中,使用 Vue Router 可以輕松實現多層嵌套路由的導航,嵌套路由允許你創(chuàng)建一個多層次的 URL 結構,這在構建具有復雜導航結構的應用程序時非常有用,需要的朋友可以參考下
    2024-10-10
  • 在Vue2中v-model和.sync區(qū)別解析

    在Vue2中v-model和.sync區(qū)別解析

    在vue2中提供了.sync修飾符,但是在vue3中不再支持.sync,取而代之的是v-model,本文給大家介紹在Vue2中v-model和.sync區(qū)別,感興趣的朋友一起看看吧
    2023-10-10

最新評論

扎囊县| 通江县| 本溪市| 苍南县| 沽源县| 白水县| 蒲城县| 肃宁县| 启东市| 慈溪市| 淳安县| 阿鲁科尔沁旗| 平乡县| 阿拉善盟| 徐水县| 湄潭县| 庆云县| 牡丹江市| 清原| 昆山市| 石嘴山市| 汕尾市| 湖口县| 拜城县| 禹州市| 潢川县| 山阳县| 宁化县| 布尔津县| 竹山县| 青川县| 固安县| 唐海县| 景德镇市| 常德市| 新竹县| 镇坪县| 宣城市| 铅山县| 崇阳县| 沂源县|