@konstantinst13

Как записать в переменную html-элемент отрендеренную Реактом?

Мне нужно записать в переменные элементы, которые рендерятся и имеют className. Как это сделать? Я переношу свой проект на React и это меня озадачивает.
import React, {
    Component
} from 'react';

export default class Header extends Component {
    constructor() {
        super();
        let createText = document.querySelector(".create-page-text"),
            createBtn = document.querySelector(".create-page-btn"),
            headersArea = document.querySelector('.create-page-area');

    }
    render() {
        return ( 
            <header className = "header" >
                    <nav className = "nav" >
                         <input type = "text" className = "create-page-text" ></input> 
                         <button className = "create-page-btn" > Создать страницу </button> 
                    </nav> 
                <div className = "create-page-area" > < /div>
            </header>
        )
    }
}
  • Вопрос задан
  • 654 просмотра
Решения вопроса 1
@dimoff66
Кратко о себе: Я есть
С помощью ref-ов
https://learn-reactjs.ru/core/refs-and-the-dom

Пример:

class MyComponent extends React.Component {
    constructor(props) {
      super(props);
      this.myRef = React.createRef();
    }
    render() {
      return <div className={"someClass"} ref={this.myRef} />;
    }
  }


this.myRef.current будет содержать ссылку на элемент с классом someClass
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы