Callback refs — это предпочтительный подход вместо findDOMNode() для доступа к DOM-узлам в React. API findDOMNode() считается устаревшим и может ограничить будущие оптимизации React.
findDOMNode() препятствует определённым улучшениям производительности и архитектурным усовершенствованиям, которые React планирует внедрить. В то же время callback refs предоставляют более явный и гибкий способ взаимодействия с DOM.
class MyComponent extends Component {
componentDidMount() {
findDOMNode(this).scrollIntoView()
}
render() {
return <div />
}
}
Такой подход жёстко привязывает твой компонент к DOM и скрывает, какой именно элемент получает доступ.
class MyComponent extends Component {
constructor(props){
super(props);
this.node = createRef();
}
componentDidMount() {
this.node.current.scrollIntoView();
}
render() {
return <div ref={this.node} />
}
}
refthis.node.current для прямого доступа к DOM-узлу, когда это нужноМетод findDOMNode() устарел, потому что он не позволяет React реализовать определённые оптимизации производительности и архитектурные улучшения.
Новый — ещё не проверен сообществом
Вы