首页 > 解决方案 > Vue DOM 元素 scrollTop 不可访问

问题描述

我正在尝试在 Vue中获取/设置scrollTopa 的属性。div这似乎是一个非常简单的业务......

<div class="list-wrapper" ref="siteList" @scroll="onScroll($event)">

然后在我的方法中(我使用类样式语法):

onClickThing() {
  console.log(this.$refs.siteList.scrollTop);
}

这似乎是正确的,但它会导致构建错误:

117:37 Property 'scrollTop' does not exist on type 'Element | Element[] | Vue | Vue[]'.
Property 'scrollTop' does not exist on type 'Element[]'.

在此处输入图像描述

但是这个实现有效:

onClickThing() {
  console.log(this.$refs.siteList['scrollTop']);
}

所以为什么?如果我输出this.$refs到控制台,siteList则存在于其中,并且具有该scrollTop属性。那为什么无法访问呢?

标签: javascripttypescriptvue.jsvuejs2

解决方案


推荐阅读