Пересматривает ли обработчик события onChange компонент каждый раз, когда вы обновляете ввод или текстовую область в React? - PullRequest
0 голосов
/ 05 апреля 2020

Я занимаюсь разработкой приложения React и хочу сохранить содержимое текстовой области, используя обработчик событий onChange. Тем не менее, насколько я знаю, response переопределяет компонент каждый раз, когда обновляется его состояние.

Означает ли это, что компонент будет перерисовываться при каждом новом символе, который я добавляю в содержимое текстовой области? Если это так, это было бы крайне неэффективно с точки зрения производительности. Какой самый эффективный способ сделать это?

1 Ответ

2 голосов
/ 05 апреля 2020

Да, компонент будет обновляться каждый раз, когда изменяется реквизит или состояние. Так работает React. Неэффективно с точки зрения производительности? От https://reactjs.org/docs/rendering-elements.html:

В отличие от элементов DOM браузера , элементы React являются простыми объектами и для создания дешевы . React DOM заботится об обновлении DOM, чтобы соответствовать элементам React.

Создание или обновление элемента DOM обходятся дороже, но повторная визуализация компонента или изменение состояния или свойств компонента не является предназначен для изменения элемента DOM:

Реагирует только на обновления Что необходимо

Реактивный DOM сравнивает элемент и его дочерние элементы с предыдущим и применяет только Обновления DOM необходимы для приведения DOM в желаемое состояние.

Итак, не беспокойтесь о стоимости обновления состояния или реквизитов, в большинстве случаев это излишне, чтобы избежать обновления состояния.

...