如何进行vue3基于script setup语法$refs的使用
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,如何进行vue3基于script setup语法$refs的使用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、vue2语法vue
千家信息网最后更新 2026年11月03日如何进行vue3基于script setup语法$refs的使用一、vue2语法
二、vue3使用
1. 组件设置ref值
2. 组件实例获取
3. 子组件内设置对外公开的变量
如何进行vue3基于script setup语法$refs的使用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
一、vue2语法
vue2语法在组件上设置ref属性后,在代码里可以通过 this.$refs.ref值 访问到对应的子组件。
一个设置ref值的组件:
在js代码中可以通过如下代码访问到这个组件:
this.$refs.usernameInput
可以调用里面的方法:
// 假设 base-input 组件内有方法foo this.$refs.usernameInput.foo();
详细使用可以参考底部列出的参考文章。
二、vue3使用
网上找了一些文章比较零散,而且试了下都不能用,但是通过这些文章了解到了一些关键信息,最后整理出如下几步:
1. 组件设置ref值
这个和vue2的类似,父组件调用子组件的时候设置ref值。
2. 组件实例获取
设置完成后,vue3可以通过ref方法获取。
const childRef = ref();
这边变量的名字需要和上面ref的一致。如何直接打印childRef,这个时候会是:
undefined
因为页面组件还没有挂载完成,所以需要在挂载完成之后才能正常使用。
onMounted(() => { console.log(childRef.value); // Proxy {…}});3. 子组件内设置对外公开的变量
上面第2步获取到子组件实例后,无法使用子组件内的方法,因为使用 script setup 的组件默认是关闭的,如果需要公开,需要使用 defineExpose 编译器宏。
// 子组件代码const foo = () => { console.log("foo");}defineExpose({ foo});父组件内调用:
// 调用子组件方法childRef.value.foo(); // foo
这样就可以调用到子组件的方法了。
查看childRef.value,也可以看到其中公开的foo方法:
vue3父组件调用子组件方法

完整参考代码:
父组件:
子组件:
child demo
关于如何进行vue3基于script setup语法$refs的使用问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
组件
方法
代码
语法
可以通过
文章
问题
参考
变量
实例
时候
更多
帮助
解答
易行
一致
简单易行
信息
关键
内容
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
湖北九亚互联网络科技有限公司
高科技互联网
互联网品科技
远信互联网科技
深圳天众互联网科技公司
互联网科技公司有哪些
互联网科技大会
新华互联网科技校企合作
互联网科技公司的市场部门
茂名市互联网科技产业园
互联网还是高科技吗
伍佰万互联网科技怎么赚钱
城市宝互联网科技有限公司
21世纪互联网科技成就
上海互联网科技公司ppt
互联网公司属于科技吗
互联网领先科技活动
美国五大互联网科技公司市值多少
互联网科技创新创业项目
科技互联网企业在行动
互联网科技公司税收优惠
互联网 科技创业
互联网前沿科技
常德市电业局互联网科技部
广州恒生互联网科技有限
宇信科技在杭州互联网排第几
北京互联网科技类企业分布
米泉互联网科技专业怎么样
互联网科技博主张洲
宁波允成互联网科技有限公司