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

Vue3使用setup監(jiān)聽props實(shí)現(xiàn)方法詳解

 更新時(shí)間:2023年08月20日 16:13:06   作者:黃金原野  
這篇文章主要為大家介紹了Vue3使用setup監(jiān)聽props實(shí)現(xiàn)方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

背景描述

子組件展示父組件傳來的參數(shù),展示的信息隨著父組件上tab的切換動(dòng)態(tài)更新。

一開始的想法是單獨(dú)監(jiān)聽這個(gè)傳遞的參數(shù),但看了VUE3的文檔之后,似乎對(duì)參數(shù)的監(jiān)聽必須精確到屬性。例如參數(shù)為

{
      name: 'Doctor',
      gender: 'Timelord'
}

需要在子組件的watch中寫明監(jiān)聽的是name還是gender
該參數(shù)中有很多可能會(huì)改變的屬性,一一監(jiān)聽過于麻煩。所以改變思路,使用監(jiān)聽props來獲取所有所有傳參。

實(shí)現(xiàn)方法

在父組件中,用于傳遞給子組件的參數(shù)必須為響應(yīng)式(eg. reactive),否則子組件在監(jiān)聽時(shí)不會(huì)監(jiān)測(cè)到變換,watch永遠(yuǎn)不會(huì)生效

immediate是立即開始監(jiān)聽,在頁(yè)面首次渲染時(shí)可能為顯示為undefined,如果watch的變化需要手動(dòng)觸發(fā),不需要開啟

deep默認(rèn)開啟,可以忽略(參數(shù)為reactive,會(huì)默認(rèn)開啟deep,如果是ref,則不會(huì)默認(rèn)開啟deep)

// 父組件
<script>
export default {
  setup() {
    let traveller = reactive({
      name: 'Doctor',
      gender: 'Timelord'
    })
  }
}
</script>
// 子組件
<script>
export default {
  props: {
    traveller: {
      type: Object
    }
  }
  setup(props) {
    watch(
            props,
            (old, newProps) => {
                console.log('=======', newProps); //這里看到新值
            },
            // {   
            //     immediate: true,
            //     deep: true
            // }
        )
  }
}
</script>

以上就是Vue3使用setup監(jiān)聽props實(shí)現(xiàn)方法詳解的詳細(xì)內(nèi)容,更多關(guān)于Vue3 setup監(jiān)聽props的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Vue如何優(yōu)雅的清除定時(shí)器

    Vue如何優(yōu)雅的清除定時(shí)器

    定時(shí)器如果不及時(shí)合理地清除,會(huì)造成業(yè)務(wù)邏輯混亂甚至應(yīng)用卡死的情況,這個(gè)時(shí)就需要清除定時(shí)器,本文就介紹了Vue如何優(yōu)雅的清除定時(shí)器,感興趣的可以了解一下
    2021-07-07
  • vue3標(biāo)簽中的ref屬性詳解及如何使用$refs獲取元素

    vue3標(biāo)簽中的ref屬性詳解及如何使用$refs獲取元素

    這篇文章主要給大家介紹了關(guān)于vue3標(biāo)簽中的ref屬性詳解及如何使用$refs獲取元素的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2024-11-11
  • vue滾動(dòng)軸插件better-scroll使用詳解

    vue滾動(dòng)軸插件better-scroll使用詳解

    這篇文章主要為大家詳細(xì)介紹了vue滾動(dòng)軸插件better-scroll的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • vue3父組件使用ref獲取子組件的屬性和方法

    vue3父組件使用ref獲取子組件的屬性和方法

    在vue3中父組件訪問子組件中的屬性和方法是需要借助于ref,蘇哦一本文小編給大家介紹了vue3父組件如何使用ref獲取獲取子組件的屬性和方法,文中詳細(xì)的代碼講解,需要的朋友可以參考下
    2023-11-11
  • Vue 組件封裝 并使用 NPM 發(fā)布的教程

    Vue 組件封裝 并使用 NPM 發(fā)布的教程

    這篇文章主要介紹了Vue 組件封裝 并使用 NPM 發(fā)布的教程,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-09-09
  • vue實(shí)現(xiàn)表格打印功能

    vue實(shí)現(xiàn)表格打印功能

    常見的打印有JavaScript打印、jQuery、vue打印,這里主要講述vue使用vue-print-nb進(jìn)行打印,廢話不多說,直接手摸手上代碼,感興趣的朋友可以參考下
    2024-01-01
  • antd?select?多選限制個(gè)數(shù)的實(shí)現(xiàn)代碼

    antd?select?多選限制個(gè)數(shù)的實(shí)現(xiàn)代碼

    這篇文章主要介紹了antd?select?多選限制個(gè)數(shù),實(shí)現(xiàn)思路和核心代碼都很簡(jiǎn)單,其中核心代碼在于disabled,代碼簡(jiǎn)單易懂需要的朋友可以參考下
    2022-11-11
  • VUE3+vite項(xiàng)目中動(dòng)態(tài)引入組件與異步組件的詳細(xì)實(shí)例

    VUE3+vite項(xiàng)目中動(dòng)態(tài)引入組件與異步組件的詳細(xì)實(shí)例

    在做vue3項(xiàng)目中時(shí),每次使用都需要先進(jìn)行引入,下面這篇文章主要給大家介紹了關(guān)于VUE3+vite項(xiàng)目中動(dòng)態(tài)引入組件與異步組件的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • vue全家桶-vuex深入講解

    vue全家桶-vuex深入講解

    這篇文章主要介紹了vue全家桶-vuex深入講解,文章內(nèi)容詳細(xì),簡(jiǎn)單易懂,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2023-01-01
  • element-ui table行點(diǎn)擊獲取行索引(index)并利用索引更換行順序

    element-ui table行點(diǎn)擊獲取行索引(index)并利用索引更換行順序

    這篇文章主要介紹了element-ui table行點(diǎn)擊獲取行索引(index)并利用索引更換行順序,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02

最新評(píng)論