vue:ref的作用和使用方法

ref属性相当于给标签设置了一个ID,可以使用该特殊标识来进行一些DOM的操作,但是使用的时候有如下几个注意事项:

  • ref属性值绑定元素都是唯一的,如果一个ref属性绑定了多个dom节点,那么这个ref属性将会默认绑定到最后设置该ref属性值的DOM节点。
  • 使用时不是直接this.ref值进行访问DOM节点,而是需要通过this.refs['children']进行访问DOM节点,因为vue会将实例中所有的ref属性值都保存到vue实例的,refs属性内。
  • 所有的ref属性进行的操作都不是响应式的,所以避免在计算属性(Computed),和模板({{}})中使用ref属性。
  • ref功能还是比较强大的,可以通过ref去调用子组件的方法和data里面的变量,当然调用的时候还是需要使用到nextTick这个全局函数的,vue的生命周期的限制,如果不使用nextTick可能会导致undefined也可能会报错
<template>
  <div>
    <children ref="children"/>
  </div>
</template>
<script>
// 子组件
import children from '@/views/salesManagement/children.vue' //子组件所在路径

export default {
  components: {
    children,
  }, //初始化组件
  data() {
    return {
      
    }
  },
  methods: {
    demo() {
      this.$nextTick(() => {
        this.$refs['children']//这里可访问子组件的实例和方法
      })
    },
  },
}
</script>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容