Как работать с input в ReactJS - onChange и value

2 года назад·1 мин. на чтение

В этой статье рассмотрим работу с элементом input в ReactJS.

Для чтения и изменения значения input нужны два пропа:
  • value - определяет текущее значение инпута,
  • onChange - функция, которая вызывается, когда пользователь меняет значение инпута.
Для хранения значения инпута заведем состояние value, и будем вызывать функцию изменения состояния в функции handleCnange. В состояние будем записывать значение поля event.target.value.
// MyInput.jsx
import {useState} from 'react'

export const MyInput = () => {
  const [value, setValue] = useState('');

  const handleChange = (event) => {
    setValue(event.target.value);
  }

  return (
    <>
      <input
        type="text"
        value={value}
        onChange={handleChange} />

      <p>Value: {value}</p>
    </>
  )
}
input ReactJS

Настройка редактора IDE для работы с React

год назад·2 мин. на чтение

Правильно настроенный редактор может сделать код более понятным для чтения и более быстрым для написания. Это может даже помочь вам отловить ошибки, когда вы пишете код. Если вы впервые настраиваете редактор или хотите настроить текущий редактор, есть несколько рекомендаций.

Содержание туториала по React Правильно настроенный редактор может сделать код более понятным для чтения и более быстрым для написания. Это может даже помочь вам отловить ошибки, когда вы пишете код. Если вы впервые настраиваете редактор или хотите настроить текущий редактор, есть несколько рекомендаций.

Выбор редактора кода

VS Code — один из самых популярных редакторов, используемых сегодня. Он имеет большой маркет с расширениями и хорошо интегрируется с популярными сервисами, такими как GitHub. Большинство функций, перечисленных ниже, также можно добавить в VS Code в качестве расширений, что делает его легко настраиваемым! Другие популярные текстовые редакторы, используемые в сообществе React:
  • WebStorm — это интегрированная среда разработки (IDE), разработанная специально для JavaScript.
  • Sublime Text имеет поддержку JSX и TypeScript, встроенную подсветку синтаксиса и автозаполнение.
  • Vim — это текстовый редактор с широкими возможностями настройки, созданный для эффективного создания и изменения любого типа текста. Он включен как «vi» в большинство UNIX систем и в Apple OS X.

Рекомендуемые функции редактора кода

Некоторые редакторы поставляются со встроенными функциями, но для других может потребоваться добавление расширения.

Линтинг

Линтеры находят проблемы в коде по мере его написания, помогая вам исправить их на ранней стадии. ESLint — популярный линтер с открытым исходным кодом для JavaScript. Убедитесь, что вы включили все правила eslint-plugin-react-hooks для своего проекта. Они необходимы и выявляют самые серьезные ошибки на ранней стадии. Рекомендуемый пресет (preset) eslint-config-react-app уже включает их.

Форматирование кода

Prettier очистит ваш код, переформатировав его, чтобы он соответствовал предустановленным настраиваемым правилам. Запустите Prettier, и все ваши табы будут преобразованы в пробелы, а ваши отступы, кавычки и т. д. также будут изменены в соответствии с конфигурацией. В идеальной настройке Prettier будет запускаться, когда вы сохраняете файл, быстро внося эти изменения за вас. Вы можете установить расширение Prettier в VS Code, выполнив следующие действия:
  1. Запустить VS Code
  2. Используйте быстрое открытие (нажмите Ctrl/Cmd+P)
  3. Вставьте в ext install esbenp.prettier-vscode
  4. Нажмите Enter

Форматирование при сохранении

В идеале вы должны форматировать свой код при каждом сохранении. В VS Code есть настройки для этого.
  1. В VS Code нажмите Ctrl/Cmd + Shift + P.
  2. Напишите "settings"
  3. Нажмите Enter
  4. В строке поиска введите "format on save".
  5. Убедитесь, что опция "format on save" отмечена галочкой.
Если в вашем пресете ESLint есть правила форматирования, они могут конфликтовать с Prettier. Мы рекомендуем отключить все правила форматирования в пресете ESLint с помощью eslint-config-prettier, чтобы ESLint использовался только для отлова логических ошибок. Если вы хотите принудительно отформатировать файлы перед слиянием пулл ревеста, используйте prettier --check для непрерывной интеграции (Continuous Integration, CI).