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

淺析Vue3中的計(jì)算屬性和屬性監(jiān)聽

 更新時(shí)間:2023年08月24日 10:24:45   作者:Python?User  
這篇文章主要為大家詳細(xì)介紹了Vue3中的計(jì)算屬性和屬性監(jiān)聽的相關(guān)知識,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

compute計(jì)算屬性

Vue3中可以通過 compute進(jìn)行監(jiān)聽計(jì)算屬性,他返回的是一個(gè)ref的對象,也就是說 通過compuye這種方式計(jì)算屬性實(shí)際上是進(jìn)行了ref的操作

import { computed } from 'vue
const user = reactive({
    firstName: 'A',
    lastName: 'B'
})
// 只有g(shù)etter的計(jì)算屬性
// 監(jiān)聽計(jì)算fullName1屬性
const fullName1 = computed(() => {
    console.log('fullName1')
    return user.firstName + '-' + user.lastName
})
// 有g(shù)etter與setter的計(jì)算屬性
// 監(jiān)聽計(jì)算fullName2屬性
const fullName2 = computed({
    get () {
        console.log('fullName2 get')
        return user.firstName + '-' + user.lastName
    },
    set (value: string) {
        console.log('fullName2 set')
        const names = value.split('-')
        user.firstName = names[0]
        user.lastName = names[1]
     }
})
return {
    fullName1,
    fullName2,
}

watch 屬性監(jiān)聽

監(jiān)視指定的一個(gè)或多個(gè)響應(yīng)式數(shù)據(jù), 一旦數(shù)據(jù)變化, 就自動(dòng)執(zhí)行監(jiān)視回調(diào);

默認(rèn)初始時(shí)不執(zhí)行回調(diào), 但可以通過配置immediate為true, 來指定初始時(shí)立即執(zhí)行第一次;

通過配置deep為true, 來指定深度監(jiān)視

import { watch } from 'vue
const user = reactive({
    firstName: 'A',
    lastName: 'B'
})
watch(user, () => {
    fullName3.value = user.firstName + '-' + user.lastName
}, {
    immediate: true,  // 是否初始化立即執(zhí)行一次, 默認(rèn)是false
    deep: true, // 是否是深度監(jiān)視, 默認(rèn)是false
})

其中 watch 也可以監(jiān)聽多個(gè)數(shù)據(jù)

/* 
watch多個(gè)數(shù)據(jù): 
    使用數(shù)組來指定
    如果是ref對象, 直接指定
    如果是reactive對象中的屬性,  必須通過函數(shù)來指定
*/
// ref 對象
watch([user.firstName, user.lastName, fullName3], (values) => {
    console.log('監(jiān)視多個(gè)數(shù)據(jù)', values)
})
// reactive 對象
watch([() => user.firstName, () => user.lastName, fullName3], (values) => {
    console.log('監(jiān)視多個(gè)數(shù)據(jù)', values)
})

watchEffect 屬性監(jiān)聽

不需要配置immediate,默認(rèn)初始時(shí)就會(huì)執(zhí)行第一次, 從而可以收集需要監(jiān)視的數(shù)據(jù);

不用直接指定要監(jiān)視的數(shù)據(jù), 回調(diào)函數(shù)中使用的哪些響應(yīng)式數(shù)據(jù)就監(jiān)視哪些響應(yīng)式數(shù)據(jù)

import { watchEffect} from 'vue
const user = reactive({
    firstName: 'A',
    lastName: 'B'
})
// 監(jiān)視所有回調(diào)中使用的數(shù)據(jù)
watchEffect(() => {
    fullName3.value = user.firstName + '-' + user.lastName
}) 
return {
    user,
    fullName1,
    fullName2,
    fullName3
}

到此這篇關(guān)于淺析Vue3中的計(jì)算屬性和屬性監(jiān)聽的文章就介紹到這了,更多相關(guān)Vue3屬性內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue實(shí)現(xiàn)移動(dòng)端項(xiàng)目多行文本溢出省略

    vue實(shí)現(xiàn)移動(dòng)端項(xiàng)目多行文本溢出省略

    這篇文章主要介紹了vue實(shí)現(xiàn)移動(dòng)端項(xiàng)目多行文本溢出省略功能,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • 解決el-tree數(shù)據(jù)回顯時(shí)子節(jié)點(diǎn)部分選中父節(jié)點(diǎn)都全選中的坑

    解決el-tree數(shù)據(jù)回顯時(shí)子節(jié)點(diǎn)部分選中父節(jié)點(diǎn)都全選中的坑

    本文主要介紹了解決el-tree數(shù)據(jù)回顯時(shí)子節(jié)點(diǎn)部分選中父節(jié)點(diǎn)都全選中的坑,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • vue+Ant?Design進(jìn)度條滑塊與input聯(lián)動(dòng)效果實(shí)現(xiàn)

    vue+Ant?Design進(jìn)度條滑塊與input聯(lián)動(dòng)效果實(shí)現(xiàn)

    最近接到這樣一個(gè)需求滑塊進(jìn)度與輸入框?yàn)橐恢?默認(rèn)值為80,最小不能小于30,最大為100,怎么實(shí)現(xiàn)這個(gè)聯(lián)動(dòng)效果呢,下面小編給大家分享下基于vue+Ant?Design進(jìn)度條滑塊與input聯(lián)動(dòng)效果的實(shí)現(xiàn),感興趣的朋友跟隨小編一起看看吧
    2022-12-12
  • 詳解Vue3?中的計(jì)算屬性及偵聽器

    詳解Vue3?中的計(jì)算屬性及偵聽器

    這篇文章主要介紹了詳解Vue3?中的計(jì)算屬性及偵聽器,文章圍繞主題的相關(guān)資料展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以看下一下
    2022-08-08
  • vue引用BootStrap以及引用bootStrap-vue.js問題

    vue引用BootStrap以及引用bootStrap-vue.js問題

    這篇文章主要介紹了vue引用BootStrap以及引用bootStrap-vue.js問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • vue實(shí)現(xiàn)手機(jī)驗(yàn)證碼登錄

    vue實(shí)現(xiàn)手機(jī)驗(yàn)證碼登錄

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)手機(jī)驗(yàn)證碼登錄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 實(shí)現(xiàn)一個(gè)簡單的vue無限加載指令方法

    實(shí)現(xiàn)一個(gè)簡單的vue無限加載指令方法

    vue 中的自定義指令是對底層 dom 進(jìn)行操作,下面以實(shí)現(xiàn)滾動(dòng)到底部加載數(shù)據(jù),實(shí)現(xiàn)無限加載來介紹如何自定義一個(gè)簡單的指令。
    2017-01-01
  • 對Vue.js之事件的綁定(v-on: 或者 @ )詳解

    對Vue.js之事件的綁定(v-on: 或者 @ )詳解

    今天小編就為大家分享一篇對Vue.js之事件的綁定(v-on: 或者 @ )詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • vue element后臺鑒權(quán)流程分析

    vue element后臺鑒權(quán)流程分析

    這篇文章主要介紹了vue element后臺鑒權(quán)流程分析,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • vue自定義彈框效果(確認(rèn)框、提示框)

    vue自定義彈框效果(確認(rèn)框、提示框)

    這篇文章主要為大家詳細(xì)介紹了vue自定義彈框,實(shí)現(xiàn)確認(rèn)框、提示框效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-05-05

最新評論

鸡东县| 绥芬河市| 湟源县| 泾源县| 孙吴县| 通河县| 宝鸡市| 阜城县| 东辽县| 宁都县| 枣阳市| 万盛区| 陈巴尔虎旗| 苍溪县| 万宁市| 惠来县| 天门市| 清远市| 惠州市| 潮州市| 普兰店市| 呼伦贝尔市| 西充县| 南川市| 旌德县| 洮南市| 会同县| 永嘉县| 轮台县| 潼南县| 龙海市| 乌鲁木齐市| 格尔木市| 遵义市| 明溪县| 满城县| 江安县| 芦溪县| 静海县| 汕头市| 徐水县|