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

vue3中的defineExpose使用示例教程

 更新時間:2023年09月27日 09:40:29   作者:楊貴妃會飛飛飛  
這篇文章主要介紹了vue3中的defineExpose使用,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

簡介

使用 <script setup> 的組件是默認關(guān)閉的————即通過模板引用或者 $parent 鏈獲取到的組件的公開實例,不會暴露在任何在 <script setup> 中聲明的綁定

換句話說,如果一個子組件使用的是選項式 API 或沒有使用 <script setup> ,被引用的組件實例和該子組件的 this 完全一致,這意味著父組件對子組件的每一個屬性和方法都有完全的訪問權(quán)。

但是如果使用了 <script setup> 的組件,這種組件是默認私有的,也就是一個父組件無法訪問到一個使用了 <script setup> 的子組件中的任何東西,除非子組件在其中通過 defineExpose 宏顯式暴露:

<script setup>
import { ref } from 'vue'
const a = 1
const b = ref(2)
// 像 defineExpose 這樣的編譯器宏不需要導入
defineExpose({
  a,
  b
})
</script>

舉個栗子

父組件獲取子組件的實例,去觸發(fā)子組件實例身上的方法。

defineExpose-demo.gif

父組件

<template>
<div class="p-20 pb-0 mb-4">
  <div>父組件</div>
  <button class="mt-4" @click="handleClick">點我聚焦</button>
</div>
<Child ref="childeRef"></Child>
</template>
<script setup lang="ts">
import { ref, provide, onMounted } from "vue";
import Child from "./Child.vue";
const childeRef = ref<HTMLInputElement | null>(null);
const handleClick = () => {
  childeRef.value?.inputRef?.focus();
};
</script>

子組件

<template>
  <hr />
  <div class="p-20 pt-4">
    <div>子組件</div>
    <input
      ref="inputRef"
      placeholder="請輸入哈哈哈哈"
      class="border-1 mt-4"
    /><br />
  </div>
</template>
<script setup lang="ts">
import { ref } from "vue";
const inputRef = ref<HTMLInputElement | null>(null);
defineExpose({
  inputRef,
});
</script>

參考文檔:

https://cn.vuejs.org/api/sfc-script-setup.html#defineexpose

https://cn.vuejs.org/guide/essentials/template-refs.html#ref-on-component

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

相關(guān)文章

  • vue中的slot封裝組件彈窗

    vue中的slot封裝組件彈窗

    這篇文章主要介紹了vue中的slot封裝組件彈窗,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • 淺入深出Vue之組件使用

    淺入深出Vue之組件使用

    這篇文章主要給大家介紹了關(guān)于淺入深出Vue之組件使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Vue具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07
  • vuejs實現(xiàn)下拉框菜單選擇

    vuejs實現(xiàn)下拉框菜單選擇

    這篇文章主要為大家詳細介紹了vuejs實現(xiàn)下拉框菜單選擇,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • Vue實現(xiàn)鼠標經(jīng)過文字顯示懸浮框效果的示例代碼

    Vue實現(xiàn)鼠標經(jīng)過文字顯示懸浮框效果的示例代碼

    這篇文章主要介紹了Vue實現(xiàn)鼠標經(jīng)過文字顯示懸浮框效果,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-10-10
  • vue使用html2canvas實現(xiàn)將DOM節(jié)點生成對應的PDF

    vue使用html2canvas實現(xiàn)將DOM節(jié)點生成對應的PDF

    這篇文章主要為大家詳細介紹了vue如何使用html2canvas實現(xiàn)將DOM節(jié)點生成對應的PDF,文中的示例代碼簡潔易懂,感興趣的小伙伴可以學習一下
    2023-08-08
  • vue使用require.context實現(xiàn)動態(tài)注冊路由

    vue使用require.context實現(xiàn)動態(tài)注冊路由

    這篇文章主要介紹了vue使用require.context實現(xiàn)動態(tài)注冊路由的方法,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2020-12-12
  • 淺談vue中慎用style的scoped屬性

    淺談vue中慎用style的scoped屬性

    本篇文章主要介紹了淺談vue中慎用style的scoped屬性,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • Vue3.0手寫輪播圖效果

    Vue3.0手寫輪播圖效果

    這篇文章主要為大家詳細介紹了Vue3.0手寫輪播圖效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • vue頁面切換過渡transition效果

    vue頁面切換過渡transition效果

    這篇文章主要介紹了vue頁面切換過渡transition效果,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-10-10
  • Vue插件之滑動驗證碼用法詳解

    Vue插件之滑動驗證碼用法詳解

    這篇文章主要介紹了Vue插件之滑動驗證碼用法,結(jié)合實例形式詳細分析了Vue滑動驗證碼插件相關(guān)使用方法與操作注意事項,需要的朋友可以參考下
    2020-04-04

最新評論

达州市| 信宜市| 大冶市| 崇阳县| 宜兰县| 隆回县| 峡江县| 玛多县| 襄汾县| 隆化县| 宁武县| 丁青县| 镇坪县| 遵义市| 金溪县| 乐清市| 伊春市| 晋宁县| 常宁市| 固安县| 蒲江县| 枣强县| 兴仁县| 福清市| 东阳市| 麻栗坡县| 墨脱县| 定边县| 金坛市| 南投县| 锡林浩特市| 滁州市| 罗源县| 长垣县| 沙洋县| 林周县| 丹寨县| 洛阳市| 兰溪市| 永州市| 卓资县|