У меня проблемы с обновлением состояния флажка после того, как ему присвоено значение checked="checked"
по умолчанию в React.
var rCheck = React.createElement('input',
{type: 'checkbox', checked:'checked', value: true},
'Check here');
После назначения checked="checked"
я не могу взаимодействовать с состоянием флажка, щелкнув по нему, чтобы снять / проверить.
Ответы:
Для взаимодействия с полем вам необходимо обновить состояние флажка после его изменения. И для установки по умолчанию вы можете использовать
defaultChecked
.Пример:
источник
render
с вышеуказанным<input>
элементом.defaultChecked
Может быть представлена в виде парам какchecked
IS.Есть несколько способов сделать это, вот несколько:
Написано с использованием State Hooks :
Вот живое демо на JSBin .
Написано с использованием компонентов :
Вот живое демо на JSBin .
источник
Если флажок создан только с помощью,
React.createElement
то используется свойствоdefaultChecked
.Кредит @nash_ag
источник
Или
Пожалуйста, ознакомьтесь с более подробной информацией о
defaultChecked
флажке ниже: https://reactjs.org/docs/uncontrolled-components.html#default-valuesисточник
кроме правильного ответа можно просто сделать: P
источник
checked
.Это работает
И функция init это
источник
Вы можете передать "true" или "" в свойство флажка ввода. Пустые кавычки ("") будут восприниматься как ложные, а пункт будет не отмечен.
источник
true
для логического атрибутаchecked
. Хотя это работает, если вы передадите строку« false », она не будет работать так, как ожидалось». проверено = {} верно?»В моем случае я чувствовал, что defaultChecked не работает должным образом с состояниями / условиями. Поэтому я использовал «флажок» с «onChange» для переключения состояния.
Например.
источник
Вот код, который я сделал некоторое время назад, это может быть полезно. вы должны играть с этой строкой => this.state = {проверено: ложь, проверено2: истина};
CSS
HTML
вот кодекс => http://codepen.io/parlop/pen/EKmaWM
источник
Не делай это слишком сложно. Сначала разберитесь с простым примером, приведенным ниже. Это будет ясно для вас. В этом случае, сразу после нажатия на флажок, мы возьмем значение из состояния (изначально это ложь), изменим его на другое значение (изначально это правда) и соответственно установим состояние. Если флажок будет нажат во второй раз, он будет делать то же самое снова. Захватив значение (теперь это правда), измените его (на false), а затем установите соответствующее состояние (теперь это снова false. Код представлен ниже.
Часть 1
Часть 2
Часть 3
источник
это можно сделать с чистым JS
источник
Я попытался сделать это с помощью компонента класса: вы можете просмотреть сообщение для того же
.....
}
источник
описанный выше дескриптор дает вам значение true или false при включенном или отключенном
источник
Я устанавливаю состояние как любой тип []. и в конструкторе установите состояние равным нулю.
В элементе ввода
this.onServiceChange (e)} /> this.onServiceChange (e)} /> this.onServiceChange (e)} /> this.onServiceChange (e)} />
Я понял это через некоторое время. Думаю, это может помочь вам всем :)
источник