【问题标题】:TypeError: Cannot read property 'scrollIntoView' of null How to solve?TypeError: Cannot read property 'scrollIntoView' of null 如何解决?
【发布时间】:2021-03-02 03:18:44
【问题描述】:
const ref = useRef(null);

const executeScroll = () => {
        ref.current.scrollIntoView({ block: 'end', behavior: 'smooth' })
    }

    useEffect(() => {
        executeScroll()
    }, [])


<div className="comment" ref={ref}>
//Data
</div>

我正在尝试转到特定的 div。我得到了这个错误。知道为什么会显示此错误或如何解决吗?

"TypeError: 无法读取属性 'scrollIntoView' of null"

【问题讨论】:

    标签: javascript reactjs use-ref


    【解决方案1】:

    useEffect 运行时,div 尚未安装到 DOM,因此ref 仍然是null

    useEffect(() => {
      if (ref.current) {
        executeScroll();
      }
    }, [ref.current])
    

    【讨论】:

    • 如果我在子组件中使用 ref={ref} 它会起作用吗?
    • 是的,它可以正常工作,将您的useEffect 代码替换为我在上面发布的代码。
    猜你喜欢
    • 2018-01-24
    • 2022-10-18
    • 1970-01-01
    • 1970-01-01
    • 2018-06-30
    • 1970-01-01
    • 2020-04-16
    • 2020-12-21
    • 1970-01-01
    相关资源
    最近更新 更多