ElementUI 中如何通过 ref 属性访问子组件实例并调用其方法?

elementui 中如何通过 ref 属性访问子组件实例并调用其方法?

elementui 中父组件引用子组件 ref 实例

vue 中,可以通过子组件的 ref 属性来访问子组件实例,从而实现组件之间的通信。在 elementui 中,父组件要调用子组件的特定方法时,需要先获取子组件的实例。

当父组件封装一个子组件时,可以通过以下步骤来实现对子组件的引用:

子组件代码:

<template><el-form ref="formref">
    ...
  </el-form></template><script>
export default {
  name: 'eform',
  methods: {
    resetfields() {
      this.$refs['formref'].resetfields()
    }
  }
}
</script>

父组件代码:

<script>
export default {
  methods: {
    resetForm() {
      // methods 里定义一个 resetFields 方法
      this.$refs.form.resetFields()
    }
  }
}
</script>

其中,父组件的 this.$refs 对象提供了对所有使用 ref 属性的子组件实例的引用。resetform 方法就可以调用子组件的 resetfields 方法了。

需要注意的是,如果子组件内嵌其它组件,需要使用 this.$refs['formref'].$refs['formref'].resetfields() 这样的形式来获取到嵌套组件的实例。通过控制台打印或使用 vue 浏览器插件可以方便地查看组件结构和 ref 引用。

以上就是ElementUI 中如何通过 ref 属性访问子组件实例并调用其方法?的详细内容,更多请关注其它相关文章!