Я новичок в React. Я пытаюсь отключить кнопку, когда поле ввода пусто. Каков наилучший подход в React для этого?
Я делаю что-то вроде следующего:
<input ref="email"/>
<button disabled={!this.refs.email}>Let me in</button>
Это верно?
Это не просто дублирование динамического атрибута, потому что мне также любопытно перенести / проверить данные из одного элемента в другой.
Ответы:
Вам нужно будет сохранить текущее значение ввода в состоянии (или передать изменения в его значении до родителя через функцию обратного вызова , или в сторону , или <решение для управления состоянием вашего приложения здесь> так , чтобы оно в конечном итоге было передано обратно в ваш компонент как опора), так что вы можете получить отключенную опору для кнопки.
Пример использования состояния:
источник
disabled
простое присоединение к элементу означает, что элемент должен быть отключен. Это не бул. Смотрите это: developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement/…Использование констант позволяет объединить несколько полей для проверки:
источник
Другой способ проверить это встроить функцию, чтобы условие проверялось при каждом рендере (каждый реквизит и изменение состояния)
Это работает:
но это не сработает
источник
это просто, давайте предположим, что вы сделали полный класс состояния путем расширения компонента, который содержит следующие
источник