【发布时间】:2021-02-24 04:13:06
【问题描述】:
我想在列表滚动到底部时显示 console.log()。
以下代码在滚动到列表底部时不显示 console.log()。
此外, const { scrollTop, scrollHeight, clientHeight } 将显示错误。
错误信息
类型“未定义”的属性“scrollTop”不存在。 ts(2339)
类型“未定义”的属性“滚动高度”不存在。 ts(2339)
类型“未定义”的属性“clientHeight”不存在。 ts(2339)
import React, { FunctionComponent, useState, useEffect, useRef } from 'react';
const Test: FunctionComponent = () => {
const listInnerRef = useRef();
const onScroll = () => {
if (listInnerRef.current) {
const { scrollTop, scrollHeight, clientHeight } = listInnerRef.current;
if (scrollTop + clientHeight === scrollHeight) {
// TO SOMETHING HERE
console.log('Reached bottom');
}
}
};
return (
<div className="list">
<div className="list-inner" onScroll={onScroll} ref={listInnerRef}>
<ul>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
<li className="height-100">aaaaaaaa</li>
</ul>
</div>
</div>
);
};
export default Test;
【问题讨论】:
标签: javascript reactjs typescript