2020-07-03-获取组件的实例

1.如何获取组件实例对象

在模板中可以通过当前组件中的this.$refs.组件里的数据.方法就可以在父组件里面使用子组件的方法进行调用
入下图的例子

image.png

这里他定义在scroll组件里面,我们可以通过下面的方式进行拿到这个对象

//因为detail是对应的一个对象ref一个映射
this.$refs.detail.scrollTo(0,-this.topScrollYs[index]+30 ,500)

官方的解释我感觉更有深度:
ref 被用来给元素或子组件注册引用信息。引用信息将会注册在父组件的 $refs 对象上。如果在普通的 DOM 元素上使用,引用指向的就是 DOM 元素;如果用在子组件上,引用就指向组件实例:


2.怎样获取组件的根元素

 this.topScrollYs = []
        this.topScrollYs[0] = 0
        this.topScrollYs[1] = this.$refs.parms.$el.offsetTop;
        this.topScrollYs[2] = this.$refs.comment.$el.offsetTop;
        this.topScrollYs[3] = this.$refs.recommend.$el.offsetTop;
      //这个$el就是为了获得到组件的根元素DOM对象

官方解释如下

类型:Element(Dom 元素)只读 详细:Vue 实例使用的根 DOM 元素。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。