当前位置 : 主页 > 网络编程 > JavaScript >

详解Vue3 父组件调用子组件方法($refs 在setup()、<script setup> 中使用)

来源:互联网 收集:自由互联 发布时间:2023-02-08
在 vue2 中 ref 被用来获取对应的子元素,然后调用子元素内部的方法。 template !-- 子组件 -- TestComponent ref="TestComponent"/TestComponent/templatescript// 导入子组件import TestComponent from './TestComponen

vue2ref 被用来获取对应的子元素,然后调用子元素内部的方法。

<template>
  <!-- 子组件 -->
  <TestComponent ref="TestComponent"></TestComponent>
</template>

<script>
// 导入子组件
import TestComponent from './TestComponent'
export default {
  components: {
    TestComponent
  },
  mounted () {
    // 调用子组件方法
    this.$refs.TestComponent.show()
  }
}
</script>

Vue3 setup () {} 中使用 ref,如何获取到子元素,并调用方法:

<template>
  <!-- 子组件 -->
  <TestComponent ref="RefTestComponent"></TestComponent>
</template>

<script>
// 导入子组件
import TestComponent from './TestComponent'
import { ref } from 'vue'
import { nextTick } from 'process'
export default {
  components: {
    TestComponent
  },
  setup () {
    // 定义一个对象关联上子组件的 ref 值(注意:这里的属性名必须跟子组件定义的 ref 值一模一样,否者会关联失效)
    const RefTestComponent = ref(null)
    // 延迟使用,因为还没有返回跟挂载
    nextTick(() => {
      RefTestComponent.value.show()
    })
    // 返回
    return {
      RefTestComponent
    }
  }
}
</script>

Vue3 <script setup> 中使用 ref,如何获取到子元素,并调用方法

<template>
  <!-- 子组件 -->
  <TestComponent ref="RefTestComponent"></TestComponent>
</template>

<script setup>
// 导入子组件
import TestComponent from './TestComponent'
import { ref } from 'vue'
import { nextTick } from 'process'

// 定义一个对象关联上子组件的 ref 值(注意:这里的属性名必须跟子组件定义的 ref 值一模一样,否者会关联失效)
const RefTestComponent = ref(null)
// 延迟使用,因为还没挂载
nextTick(() => {
  RefTestComponent.value.show()
})
</script>

到此这篇关于Vue3 父组件调用子组件方法($refs 在setup()、<script setup> 中使用)的文章就介绍到这了,更多相关Vue3 父组件调用子组件内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

上一篇:VUE组件传参超详细讲解
下一篇:没有了
网友评论