在preact / react中渲染后如何触发element.scrollIntoView?

问题描述

实际上,我正在渲染元素列表并在每个元素上具有编辑功能。每当元素被编辑时,它都会触发获取和完全重新渲染。我正在尝试让DOM进入scrollTo的元素,该元素在获取并重新渲染后刚刚被编辑。

当前代码如下:

const ref = useRef(null);
useEffect(() => {
  if (scrollToThis && !loading) ref.current.scrollIntoView({ behavior: 'smooth',block: 'end' });
},[scrollToThis])

我将ref传递到运行此代码的组件的根目录。它可以工作,但几乎永远不会滚动到正确的元素(可能是因为传递给ref的{​​{1}}来自以前的渲染,但是没有钩子,代码根本无法工作。

如何设置它,使ref始终是最新的并滚动到正确的元素?我一直在阅读博客文章和文档,但对我来说真的没有什么可以点击的。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)