Событие onChange запускается при вводе значений во входные данные. Это запускает функцию handleChange(), которая используется для установки нового состояния ввода.

1. Обработка одного входа

Во-первых, мы должны настроить поле ввода как контролируемый компонент, чтобы у нас был контролируемый компонент, который воспринимает изменения и соответствующим образом обновляет состояние.

Мы изучим функцию handleChange() с помощью проекта, в котором мы собираемся использовать функцию handleChange() для отображения введенных данных.

Создание приложения React:

Шаг 1. Создайте приложение React с помощью следующей команды:

Шаг 2. После создания папки проекта, т. е. демонстрации handlechange, перейдите к ней с помощью следующей команды:

Структура проекта: он будет выглядеть следующим образом.

App.js. Теперь запишите следующий код в файл App.js. Здесь приложение является нашим компонентом по умолчанию, в котором мы написали наш код.

JavaScript

Шаг для запуска приложения: запустите приложение с помощью следующей команды из корневого каталога проекта:

Вывод:

Следующий результат будет получен, если пользователь введет ввод, заданный с помощью функции handleChange(), как показано ниже:

2. Обработка множественного ввода

В приведенном выше проекте запишите следующий код в файл App.js для обработки нескольких входных данных.

Javascript

Шаг для запуска приложения: запустите приложение с помощью следующей команды из корневого каталога проекта:

Вывод:

Следующее будет выводом, если пользователь введет ввод, который установлен с помощью функции handleChange(), как показано ниже:

Объяснение. Мы добавили свойство имени в случае нескольких входных данных, чтобы мы могли определить, какое поле ввода вызвало handleChange()функция. Мы использовали оператор распространения, потому что при запуске функции handleChange() нам нужно текущее значение firstName и lastName (поскольку только тогда мы можем добавить (или присвоить) введенный ввод к переменным состояния (firstName и lastName)), которые хранятся в объекте состояния, поэтому мы использовали оператор распространения, чтобы взять существующий объект состояния.

Как работает это выражение [name]: value?

Этот оператор присваивает значение тому полю ввода, имя которого (Свойство) соответствует значению.