Простой способ поддерживать код в чистоте и понятности — следить за тем, чтобы соблюдалось как можно больше правил кодирования вашего проекта. Я делаю это со своими проектами, настраивая хук предварительной фиксации Husky с помощью ESLint, Prettier, lint-staged и SonarJS.

Что такое Хаски?

Husky: это инструмент, который позволяет нам запускать сценарии специально при использовании контроля версий, такого как git. В нашем примере мы будем использовать husky для создания сценариев перед фиксацией для запуска Prettier и Eslint при каждой фиксации.

Что такое ESLint?

Используя правила ESLint, программа под названием ESLint может исследовать наш код и обнаруживать ошибки. Некоторые ошибки могут быть исправлены им даже самостоятельно.

Что такое красивее?

Prettier — это средство форматирования кода, которое может форматировать наш код, используя параметры по умолчанию или определенные вами правила.

Что такое lint-stage?

lint-staged может запускать несколько линтеров для поэтапных git-файлов, в нашем случае это ESLint и Prettier.

Что такое сонарJS?

Правила SonarJS для ESLint для обнаружения ошибок и подозрительных шаблонов в вашем коде. Подробности смотрите здесь.

Начиная

Установите некоторые dev-зависимости

yarn add --dev husky lint-staged eslint eslint-config-airbnb prettier

Настройка ESLint

Для вашего eslintrc.js вы можете использовать свои собственные правила. Возможно, вам придется установить несколько зависимостей для разработки, чтобы использовать ту, которую я поддерживаю для своих проектов, но она обеспечивает чертовски чистый код реакции. Отметьте здесь, чтобы скопировать и вставить eslintrc.js.

Настройка красивее

Опять же, вы можете создавать свои собственные правила для своего prettier.js. Вот некоторые из моих.

Настройка SonarJS

Добавьте правила в eslintrc.js после установки пакета.

yarn add eslint-plugin-sonarjs

Настройка Хаски

Хук перед фиксацией необходимо создать и добавить после включения Git Hooks в самых последних версиях Husky. Чтобы настроить это, используйте следующие инструкции в терминале.

npx husky install

npx husky add .husky/pre-commit "npx --no-install lint-staged"

скрипты предписывают lint-staged выполнить определенную команду для набора файлов.

Как бежать?

  1. git добавить . или файлы, которые вы хотите поставить
  2. git commit -m «здесь ваше сообщение о коммите»
  3. В терминале вы можете найти это:

Загляните на мой github react-native-codeQuality-template, если вам нужен простой способ скопировать и вставить любой из этих кодов или вам нужен шаблон, в котором все это уже есть.