小编Kev*_*yat的帖子

使用 useRef 或 createRef 而不是内联引用有什么优点?

我正在进行代码审查,发现另一位开发人员编写的代码,例如:

function sampleComponent() {
       let divRef = {};
    
       return (
        <div ref={(el) => { divRef = el }}></div>
       )
    }
Run Code Online (Sandbox Code Playgroud)

然后使用 divRef 作为 DOM 元素的引用。

然而,我知道的模式是createRef在类组件中使用,useRef在功能组件中使用钩子。甚至 ReactJS 官方https://reactjs.org/docs/refs-and-the-dom.html也表示要避免未来 React 版本的内联引用。这是一个要写的遗留模式吗?

到目前为止我能研究的是,内联会ref渲染函数两次,因此建议避免。

我想知道对此还有什么其他解释?

ref reactjs use-ref create-ref

4
推荐指数
1
解决办法
1630
查看次数

标签 统计

create-ref ×1

reactjs ×1

ref ×1

use-ref ×1