在本文中,我们将解决一个常见问题,即当有新消息时,聊天小部件的滚动条保持固定在顶部加载。我们的目标是将滚动条聚焦在前一个数组中的最后一个消息元素上。
要解决此问题,我们需要:
React 16.8 ,功能组件:
const ScrollDemo = () => { const myRef = useRef(null); const executeScroll = () => myRef.current.scrollIntoView(); // Scroll to the element return ( <> <div ref={myRef}>Element to scroll to</div> <button onClick={executeScroll}>Click to scroll </button> </> ); };
React 16.3 ,类组件:
class ReadyToScroll extends Component { constructor(props) { super(props); this.myRef = React.createRef(); } render() { return <div ref={this.myRef}>Element to scroll to</div>; } executeScroll = () => this.myRef.current.scrollIntoView(); // Scroll to the element }
类组件 - 引用回调:
class ReadyToScroll extends Component { render() { return <div ref={(ref) => (this.myRef = ref)}>Element to scroll to</div>; } executeScroll = () => this.myRef.scrollIntoView(); // Scroll to the element }
重要提示:
html { scroll-behavior: smooth; }
以上是如何在 React 中滚动到聊天小部件的底部?的详细内容。更多信息请关注PHP中文网其他相关文章!