Vue3 组件方法暴露给其他组件调用 defineExpose使用

介绍

Vue2 父组件可以使用ref 调用子组件内部的方法,而vue3 无法直接通过ref进行调用内部方法,需要将组件的方法暴露。

子组件

将改方法暴露出去,给父组件调用

javascript 复制代码
import { ref, defineExpose } from 'vue'
function resetFrom() { //重置表单
    formRef.value.resetFields()
    regionList.value = []
    cityList.value = []
}

defineExpose({
    resetFrom //暴露方法
});

父组件

html 复制代码
<District ref="batchExtraction" 
 </District>
javascript 复制代码
const batchExtraction = ref(null)
function batchExtractionResetFrom() { //表单重置
    batchExtraction.value.resetFrom()  //调用子组件方法
}
相关推荐
掘金安东尼1 分钟前
⏰前端周刊第 458 期v2026.3.24
前端·javascript·面试
前端付豪14 分钟前
实现必要的流式输出(Streaming)
前端·后端·agent
张元清17 分钟前
useMediaQuery:React 响应式设计完全指南
前端·javascript·面试
小金鱼Y17 分钟前
一文吃透 JavaScript 防抖:从原理到实战,让你的页面不再 “手抖”
前端·javascript·面试
Z兽兽20 分钟前
React 18 开发环境下useEffect 会执行两次,原因分析及解决方案
前端·react.js·前端框架
紫_龙22 分钟前
最新版vue3+TypeScript开发入门到实战教程之Vue3详解props
前端·vue.js·typescript
树上有只程序猿29 分钟前
这波低代码热,能维持多久
前端
姓王名礼34 分钟前
这是一个完整的全栈交付包,包含Vue3 前端交互界面(集成数字人视频流、ECharts 图表、语音对话)和Docker Compose 一键部署脚本。
前端·docker·echarts
嵌入式-老费38 分钟前
vivado hls的应用(axis接口)
前端·webpack·node.js
孟陬1 小时前
国外技术周刊第 2 期 — 本周热门 🔥 YouTube 视频 TED 演讲 AI 如何能够拯救(而非摧毁)教育
前端·后端·程序员