vue3組合式API獲取子組件屬性和方法的代碼實(shí)例
在vue2中,獲取子組件實(shí)例的方法或者屬性時(shí),父組件直接通過ref即可直接獲取子組件的屬性和方法,如下:
// father.vue
<child ref="instanceRef" />
this.$ref['instanceRef'].testVal
this.$ref['instanceRef'].testFunc()
// child.vue
data () {
return {
testVal: '來自子組件的屬性'
}
},
methods: {
testFunc() {
return '來自子組件的方法'
}
}
在vue3 組合式API中,在子組件使用defineExpose指定需要暴露的屬性和方法,父組件才可以通過ref獲取到子組件的屬性和方法,如下:
// father.vue
<script setup lang="ts">
import ChildInstance from "@/views/component/father-instance/child-instance.vue";
import { ref } from "vue";
const instanceRef = ref(null);
const getChildInstance = () => {
const childInstance = instanceRef.value; // 通過ref獲取子組件實(shí)例
console.log(childInstance.childValue);
console.log(childInstance.childFunc());
};
</script>
<template>
<ChildInstance ref="instanceRef" />
<el-button @click="getChildInstance">獲取子組件屬性和方法</el-button>
</template>
<style scoped lang="scss"></style>
// child.vue
<script setup lang="ts">
import { ref, defineExpose } from "vue";
const childValue = ref("來自子組件的屬性");
const childFunc = () => {
return "來自子組件的方法";
};
// 使用defineExpose指定需要暴露的屬性和方法
defineExpose({
childValue,
childFunc
});
</script>
<template>
<div>來自子組件</div>
</template>
<style scoped lang="scss"></style>
以上就是vue3組合式API獲取子組件屬性和方法的代碼實(shí)例的詳細(xì)內(nèi)容,更多關(guān)于vue3 API獲取子組件的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Vue實(shí)現(xiàn)登錄記住賬號(hào)密碼功能的思路與過程
最近在學(xué)習(xí)vue,發(fā)現(xiàn)了vue的好多坑,下面這篇文章主要給大家介紹了關(guān)于Vue實(shí)現(xiàn)登錄記住賬號(hào)密碼功能的思路與過程,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-11-11
Vue3 登錄狀態(tài)持久化方案詳解(Token 是什么)
本文給大家介紹Vue3登錄狀態(tài)持久化方案詳解包括Token 是什么的相關(guān)知識(shí),本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2026-02-02
Vue transx組件切換動(dòng)畫庫(kù)示例詳解
這篇文章主要為大家介紹了Vue transx組件切換動(dòng)畫庫(kù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
vue3和vue2掛載實(shí)例到全局(自定義消息提示框組件方式)
這篇文章主要介紹了vue3和vue2掛載實(shí)例到全局(自定義消息提示框組件方式),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04
詳解vue項(xiàng)目中使用token的身份驗(yàn)證的簡(jiǎn)單實(shí)踐
這篇文章主要介紹了vue項(xiàng)目中使用token的身份驗(yàn)證的簡(jiǎn)單實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03
vue項(xiàng)目中圖片懶加載時(shí)出現(xiàn)的問題及解決
這篇文章主要介紹了vue項(xiàng)目中圖片懶加載時(shí)出現(xiàn)的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04
vue實(shí)現(xiàn)element-ui對(duì)話框可拖拽功能
這篇文章主要介紹了vue實(shí)現(xiàn)element-ui對(duì)話框可拖拽功能,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08
使用Vue Composition API寫出清晰、可擴(kuò)展的表單實(shí)現(xiàn)
這篇文章主要介紹了使用Vue Composition API寫出清晰、可擴(kuò)展的表單實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06

