@Trisman

Как менять текст у нескольких кнопок сразу?

https://vk.cc/auaisi

При нажатии на записаться появляется кнопка отправить
Нужно, чтобы при нажатии на отправить у кнопки записаться текст сменялся на вы записаны

У меня почему-то меняется текст только у одной кнопки.
  • Вопрос задан
  • 104 просмотра
Решения вопроса 1
hzzzzl
@hzzzzl
handleClickSubmit = () => {
        // this.props.handleFormSubmitted(!this.state.isSubmited)  <- 
        // что-то такое послать в родительский компонент, и там это сохранить в стейт, 
        // в зависимости от этого и менять текст кнопки
        this.setState({
            isSubmited: !this.state.isSubmited,
        });
    }
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Первый вариант - двунаправленный поток данных как в первом ответе, но если у вас будет 10 - 20 компонентов вы запутаетесь
Проще всего подключить любой стейт менеджемент
Context API https://reactjs.org/docs/context.html
redux + react redux
https://mobx.js.org/README.html
Из новых https://recoiljs.org/
Второе, согласно последнему style guide новые компоненты нужно делать функциональными с использованием хуков, а не классами
1) Они лучше вписываются в функциональный подход реакта, 2) Лучше работают с Fiber
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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