Vue3中怎么使用ref标签对组件进行操作

其他教程   发布日期:2025年02月26日   浏览次数:164

这篇文章主要讲解了“Vue3中怎么使用ref标签对组件进行操作”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue3中怎么使用ref标签对组件进行操作”吧!

在Vue2中 一般用 this.$ref.xxxx 进行获取组件对象
Vue3中就不使用这个方法了
例如:

  1. <el-upload class="upload-demo" action="" :http-request="handleUpload"
  2. :on-change="handleChange"
  3. :before-upload="handleBeforeUpload" :show-file-list="false" :auto-upload="false" :limit="1" ref="uploadRef">
  4. <el-button type="primary" icon="upload" slot="trigger">导入</el-button>
  5. </el-upload>

想要获取el-upload组件对象

先创建

  1. const uploadRef = ref()

使用的话需要xxx.value.xxx
例如:

  1. // 清除上传列表
  2. uploadRef.value.clearFiles()

补充:Vue3 中 ref 标记组件使用

在 Vue3 中我们还可以使用 ref 标记组件来进行获取父子组件获取属性和方法的操作。

父组件

  1. <template>
  2. <hello-world ref='son'></hello-world>
  3. <button @click='getSon()'>获取</button>
  4. </template>
  5. <script setup>
  6. // 首先还是先引入子组件
  7. import HelloWorld from './components/HelloWorld.vue'
  8. // 然后引入 ref ,并声明 son
  9. import {ref} from 'vue'
  10. const son = ref()
  11. const getSon = () => {
  12. console.log(son.value.title)
  13. son.value.sonMethod()
  14. }
  15. </script>

子组件

  1. <template>
  2. <div> {{ title }} </div>
  3. </template>
  4. <script setup>
  5. import {ref} from 'vue'
  6. const title = ref('我是子组件的title')
  7. const sonMethod = () => {
  8. console.log('我是子组件的方法')
  9. }
  10. // 最要的一步,这里我们需要把父组件需要的属性和方法暴露出去,这样父组件才能获取的到
  11. defineExpose({sonMethod, title})
  12. </script>

以上就是Vue3中怎么使用ref标签对组件进行操作的详细内容,更多关于Vue3中怎么使用ref标签对组件进行操作的资料请关注九品源码其它相关文章!