0

我的头脑中有一个困惑,源于 react docs 提到不要过度使用 useRef:https ://reactjs.org/docs/refs-and-the-dom.html#dont-overuse-refs 。

在我目前的反应编码风格中,我使用 dom api 来操作 dom 而不是 useRef 钩子,因为我制定了仅在绝对需要时才使用 useRef 的规则,但我无法解释为什么我必须用 dom api 替换 useRef。或者在这种情况下我应该使用Ref?

4

1 回答 1

1

看看你链接到的材料到底在说什么:

您的第一个倾向可能是在您的应用程序中使用 refs 来“让事情发生”。如果是这种情况,请花点时间更批判地思考在组件层次结构中应该拥有状态的位置。通常,很明显“拥有”该状态的适当位置位于层次结构中的更高级别。

它说你应该避免使用 refs(因此直接操作 DOM 元素),而应该通过stateprops来改变 DOM 。

如果您需要直接访问 DOM,那么您绝对应该使用 refs。它质疑直接访问 DOM 的必要性,而不是使用 refs 来获取它。

于 2020-09-18T08:58:37.247 回答