reactjs - 渲染 React 时将 div 滚动到底部
问题描述
我在用 React 编写的聊天应用程序中有一个消息 div。我希望在用户第一次加载页面时将 div 滚动到底部以查看最新消息。我该如何实施?
解决方案
您可以使用useLayoutEffect
钩子查看您的 div 何时呈现并使用对您的 div 元素的引用来滚动到结束
const Messages = () => {
const divRef = useRef();
...
useLayoutEffect(() => {
if (divRef.current)
divRef.current.scrollTop = divRef.current.scrollHeight;
}, [divRef]);
...
return (
<div ref={divRef}>
...
</div>
);
};
推荐阅读
- javascript - Java Spring Boot - enable button when server says
- javascript - AngularJS - 从开发工具编辑范围函数
- python - ValueError:无法将字符串转换为浮点数:'n'
- android - RecyclerView items with different heights with FlexboxLayoutManager
- sql-server - How to transform data with SSIS Transfer SQL Server Objects Task?
- python - Take a 2D list of any even dimensions and return a list holding the count of thing for each 2 X 2 grid (Python)
- php - Making a 2 coloumn table with PHP without 'echoing' so much
- c# - C#“预期方法名称”
- twain - TWAIN 视频捕捉
- azure - Unable to Create Storage pool on Azure VM 2016