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

vue3?setup中父組件通過Ref調(diào)用子組件的方法(實例代碼)

 更新時間:2022年08月17日 09:53:17   作者:虎落鷹背  
這篇文章主要介紹了vue3?setup中父組件通過Ref調(diào)用子組件的方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

在setup()鉤子函數(shù)中調(diào)用

父組件

<template>
	<div>
        我是父組件
        <children ref="childrenRef" />
        <button @click="handleChildren">觸發(fā)子組件</button>
    </div>
</template>

<script lang="ts">
    import { ref, defineComponent } from 'vue'
    import Children from './components/Children.vue';
    export default defineComponent({
    	components: { Children }
        setup() {
            // ref的泛型除了指定any外 還可以指定<InstanceType<typeof Children>>
            const childrenRef = ref<any>();
            const handleChildren = () => childrenRef.value.isChildren();
            return {
                childrenRef,
                handleChildren
            }
        },
    })
</script>

子組件:

<template>
<div>
    我是子組件
</div>
</template>

<script lang="ts">
    import { defineComponent } from 'vue'

    export default defineComponent({
        setup() {
            const isChildren = () => {
                console.log("我是子組件");
            }
            return {
                isChildren,
            }
        }
    })
</script>

如果是在setup()鉤子函數(shù)中使用,父組件通過ref獲取到子組件實例后,直接.value.函數(shù)名即可調(diào)用子組件所定義的函數(shù)。其中ref的泛型可以指定anyInstanceType<typeof Children>

在<srcipt setup>中調(diào)用

父組件

<template>
<div>
    我是子組件
</div>
</template>

<script lang="ts">
    import { defineComponent } from 'vue'

    export default defineComponent({
        setup() {
            const isChildren = () => {
                console.log("我是子組件");
            }
            return {
                isChildren,
            }
        }
    })
</script>

子組件

<template>
    <div>
        我是子組件
    </div>
</template>

<script setup lang="ts">
    import { defineExpose } from 'vue';
    const isChildren = () => {
        console.log("我是子組件的第一個方法");
    }
    const isChildren2 = () => {
        console.log("我是子組件的第二個方法");
    }
    defineExpose({ isChildren, isChildren2 })
</script>

<srcipt setup>中調(diào)用和setup()鉤子函數(shù)中調(diào)用不同的是:子組件中要通過defineExpose將方法暴露給父組件。

??官網(wǎng)說明地址

到此這篇關于vue3 setup中父組件通過Ref調(diào)用子組件的方法的文章就介紹到這了,更多相關vue3 setup父組件調(diào)用子組件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

厦门市| 霍州市| 洪泽县| 永年县| 新安县| 仁布县| 当涂县| 英山县| 广昌县| 桂平市| 五莲县| 商都县| 蓬莱市| 宁蒗| 仁布县| 兴宁市| 南充市| 南汇区| 清涧县| 鄂伦春自治旗| 芮城县| 江西省| 隆化县| 通州市| 庆阳市| 黄冈市| 金昌市| 济源市| 锦屏县| 得荣县| 顺平县| 南和县| 合阳县| 元阳县| 城固县| 凤庆县| 承德县| 石阡县| 太和县| 晋中市| 襄城县|