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

vue3中sync修飾符的使用詳解

 更新時(shí)間:2023年10月07日 09:45:41   作者:CamphorBloom  
.sync修飾符是Vue中用于實(shí)現(xiàn)子組件修改父組件傳遞的props值并更新到父組件的功能,它實(shí)際上是一個(gè)語(yǔ)法糖,將子組件的props綁定到一個(gè)名為update:propName的自定義事件上,本文給大家介紹了vue3中sync修飾符的使用,需要的朋友可以參考下

props是子組件與父組件進(jìn)行通信的常用方式,使用步驟主要有以下幾個(gè):   

 1. 在子組件中定義props要從父組件接收的變量(變量的類型必須寫(xiě)明,默認(rèn)值可選)

// 這里以 document.vue 子組件為例
// 通過(guò) defineProps 宏的方式聲明, props 接受父組件傳遞過(guò)來(lái)的數(shù)據(jù)
const props = defineProps({
  title: {
    type: String,
    default: 'Default title'
  }
})

2. 父組件引入子組件,并綁定父組件的變量傳遞給子組件。

// 這里 App.vue 為父組件
import document from './components/document.vue'
const title = ref("標(biāo)題")
// ......
<document :title="title"></document>

3. 在子組件中分別打印props和使用props中的數(shù)據(jù)。

console.log("props: ", props);
 // ......
// 在template 模板中不需要通過(guò)props.title方式獲取
<template>
<div> {{ title }} </div>
</template>

子組件欲更改父組件數(shù)據(jù)時(shí),首先必須明確一個(gè)原則:誰(shuí)的數(shù)據(jù)誰(shuí)來(lái)維護(hù),不能直接通過(guò)props來(lái)修改(雖說(shuō)可以改變,但不允許,破壞了數(shù)據(jù)單向流)。官方給我們提供了emits去處理子組件向父組件數(shù)據(jù)通信的問(wèn)題,分為以下幾個(gè)步驟:

1. 在子組件中定義emits要向父組件觸發(fā)的事件(事件可以有多個(gè))。

// 通過(guò) defineEmits 宏的方式聲明
const emit = defineEmits(['update:title'])

2. 子組件手動(dòng)觸發(fā)事件,并傳入更新的數(shù)據(jù)。

// document.vue
<button @click="changeTitle()">click</button>
// ......
const changeTitle = (newTitle = “新標(biāo)題”) => {
  emit('update:title', newTitle)
}

3. 父組件在子組件標(biāo)簽中綁定同名的事件,并賦值為更新后的數(shù)據(jù)。

// App.vue
<document :title="title" @update:title="(v) => title = v"></document>

這里的事件名“update:eventName”為固定寫(xiě)法,vue于v2.3引入sync修飾符,省去了在組件標(biāo)簽內(nèi)寫(xiě)@update函數(shù)。

使用sync修飾符:

// App.vue
 <document :title.sync="title" @change-title="(v) => title = v"></document>
<!--    <document :title.sync="title" @changeTitle="(v) => title = v"></document>-->
<!--    <document :title.sync="title" @ChangeTitle="(v) => title = v"></document>-->
// document.vue 添加 changeTitle 事件
const emit = defineEmits(['update:title', 'changeTitle'])

另外這里綁定的changeTitle事件為kebab-case(短橫線命名),駝峰和大駝峰命名均可。

到此這篇關(guān)于vue3中sync修飾符的使用詳解的文章就介紹到這了,更多相關(guān)vue3 sync修飾符使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue使用axios訪問(wèn)本地json文件404問(wèn)題及解決

    vue使用axios訪問(wèn)本地json文件404問(wèn)題及解決

    這篇文章主要介紹了vue使用axios訪問(wèn)本地json文件404問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • 詳解Vue新增內(nèi)置組件的使用

    詳解Vue新增內(nèi)置組件的使用

    這篇文章主要為大家介紹了Vue新增內(nèi)置組件的使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-12-12
  • Vue-Router在Vue2和Vue3中的使用示例詳解

    Vue-Router在Vue2和Vue3中的使用示例詳解

    這篇文章主要介紹了Vue-Router在Vue2和Vue3中的使用,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • Vue3 中的 Vue-Router 和 VueX詳解

    Vue3 中的 Vue-Router 和 VueX詳解

    VueX 提供了一個(gè)全局都可以使用的數(shù)據(jù)管理倉(cāng)庫(kù),不用考慮父子傳值之類的問(wèn)題,并且可以跨頁(yè)面?zhèn)鬟f數(shù)據(jù),提高了可維護(hù)性,這篇文章主要介紹了Vue3 中的 Vue-Router 和 VueX,需要的朋友可以參考下
    2022-12-12
  • Vue3源碼分析調(diào)度器與watch用法原理

    Vue3源碼分析調(diào)度器與watch用法原理

    這篇文章主要為大家介紹了Vue3源碼分析調(diào)度器與watch用法原理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • vue3使用ref的性能警告問(wèn)題

    vue3使用ref的性能警告問(wèn)題

    這篇文章主要介紹了vue3使用ref的性能警告問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • vue中使用@change的方法

    vue中使用@change的方法

    @change 是 Vue.js 中用于監(jiān)聽(tīng)表單元素值變化的事件處理器,很多組件有@change事件,那到底如何獲取到當(dāng)前的參數(shù)呢?本文給大家詳細(xì)講解,感興趣的朋友一起看看吧
    2023-11-11
  • Vue項(xiàng)目之ES6裝飾器在項(xiàng)目實(shí)戰(zhàn)中的應(yīng)用

    Vue項(xiàng)目之ES6裝飾器在項(xiàng)目實(shí)戰(zhàn)中的應(yīng)用

    作為一個(gè)曾經(jīng)的Java?coder,當(dāng)?shù)谝淮慰吹絡(luò)s里面的裝飾器Decorator,就馬上想到了Java中的注解,當(dāng)然在實(shí)際原理和功能上面,Java的注解和js的裝飾器還是有很大差別的,這篇文章主要給大家介紹了關(guān)于Vue項(xiàng)目之ES6裝飾器在項(xiàng)目實(shí)戰(zhàn)中應(yīng)用的相關(guān)資料,需要的朋友可以參考下
    2022-06-06
  • vue2 全局變量的設(shè)置方法

    vue2 全局變量的設(shè)置方法

    下面小編就為大家分享一篇vue2 全局變量的設(shè)置方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • 基于vue2實(shí)現(xiàn)上拉加載功能

    基于vue2實(shí)現(xiàn)上拉加載功能

    這篇文章主要為大家詳細(xì)介紹了基于vue2實(shí)現(xiàn)上拉加載功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11

最新評(píng)論