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()  //调用子组件方法
}
相关推荐
JustHappy13 小时前
古法编程秘籍(四):函数究竟是什么?把函数最重要的能力一次讲清楚
前端·后端·面试
OpenTiny社区13 小时前
一行命令添加 AI 对话入口!TinyRobot 也太省事了~
前端·vue.js·ai编程
sagima_sdu13 小时前
Vue 前端径向渐变背景制作
前端·javascript·vue.js
神奇小汤圆13 小时前
Java 并发编程核心原理与生产级最佳实践
javascript
叶落阁主14 小时前
Vue3 后台管理系统全局菜单搜索实战:Cmd/Ctrl + K、权限菜单与拼音过滤
前端·javascript·vue.js
卷帘依旧14 小时前
setState是同步的还是异步的
前端·面试
卷帘依旧14 小时前
讲一下useEffect和useLayoutEffect
前端·面试
wuhen_n14 小时前
AI Agent 入门:从零实现 LangChain 基础智能体
前端·langchain·ai编程
MacroZheng14 小时前
阿里Qoder + GLM-5.1,夯爆了!
前端·vue.js·人工智能
我是小胡胡14 小时前
彦火APP-Flutter包体分析
前端