Eslint – только 6,6 м еженедельных загрузки – это инструмент качества кода JavaScript, который анализирует ваш код, не выполняя его. Это предупреждает вас о ошибках и выиграйте вас много времени. ESLINT – это инструмент для идентификации и отчетности о моделях, обнаруженных в коде Ecmascript/JavaScript. Во многих отношениях он похож на jslint и jshint с несколькими исключениями: они поставляются с предопределенным набором правил для вас. Eslint имеет гибкость, чтобы вы могли настроить.
Простой пример о том, как это может помочь вам?
Итак, давайте получим простой пример:
function(a,b){ //do something with the variables return a * d; }
Эта ошибка очевидна, когда у вас есть небольшое количество кода. Но если у вас большая сумма, это будет очень полезно. Берегите Eslint в свой код, вы получаете следующий выход:
1:10 error 'test' is defined but never used no-unused-vars 1:17 error 'b' is defined but never used no-unused-vars 2:1 error Expected indentation of 1 tab but found 4 spaces indent 3:1 error Expected indentation of 1 tab but found 4 spaces indent 3:16 error 'd' is not defined no-undef
Без ES Lint вы можете иметь нежелательные ошибки, которые могут заставить ваших клиентов недовольны. Таким образом, часть процесса автоматизации качества кода и совместно с автоматическими тестами вы можете настроить ESLINT, чтобы получить лучшее качество кода. Это исправит ненужные ошибки, и ваши клиенты могут быть счастливее.
В приведенном выше коде вы можете увидеть, что это уже нашел некоторые ошибки, и у меня уже установлена конфигурация ESLINT. Давайте сделаем это для тебя сейчас!
Если вы хотите включить ESLINT как часть системы сборки вашего проекта, мы рекомендуем устанавливать ее локально. Вы можете сделать это, используя NPM:
Установка и использование Предварительные условия: Node.js.14), NPM версия 3+.
Просто немного связан с этим предметом: в Appseed pro Версия Вы также можете получить все настроить для легко отладки тестов на VSCode. Вы даже можете получить все вышеперечисленный код бесплатно и использовать его самостоятельно. Лицензированная MIT.
Есть два способа установить ESLINT: глобально и локально.
Местная установка и использование
$ NPM Установите Eslint –save-dev, вы должны затем настроить файл конфигурации:
$ ./node_modules/.bin/eslint-init После этого вы можете запустить Eslint в корневом каталоге вашего проекта, как это:
$ ./node_modules/.bin/eslint yourfile.js вместо навигации по ./node_modules/.bin/Вы также можете использовать NPX для запуска ESLINT:
$ NPX ESLINT Примечание. Если ESLINT не был установлен вручную (через NPM), NPX будет устанавливать ESLINT на временный каталог и выполнить его.
Любые плагины или общие конфиги, которые вы используете, также должны быть установлены локально для работы с локально установленным ESLINT.
Глобальная установка и использование Если вы хотите сделать Eslint доступен для инструментов, которые управляют всеми своими проектами, мы рекомендуем устанавливать Eslint Globally. Вы можете сделать это, используя NPM:
$ NPM Установка -G Eslint Вы должны установить файл конфигурации:
$ Eslint –init После этого вы можете запустить Eslint в любом файле или каталоге, как это:
$ eslint yourfile.js.
Любые плагины или общие конфиги, которые вы используете, также должны быть установлены во всем мире для работы с глобально установленным ESLINT.
Таким образом, Eslint находит ошибки, новые правила и могут также исправить проблемы автоматически. Запуск команды Fix легко:
./node_modules/.bin/eslint --fix --ext .js test.js /appseed/starter-express/test.js 1:10 error 'test' is defined but never used no-unused-vars 1:17 error 'b' is defined but never used no-unused-vars 3:13 error 'd' is not defined no-undef
После запуска команды исправления он возвращает только ошибки, которые требуют вашего внимания. Понятно, что мы никогда не используем тестовую функцию в нашем случае. И выглядит так, будто я сделал опечаток на использовании переменной D вместо б. Давайте исправим это и увидим вывод. Код выглядит так, как сейчас:
function test(a,b){ //do something with the variables return a * b; } test(1,2);
И вывод для Eslint находится ниже:
node_modules/eslint/bin/eslint.js test.js ➜ starter-express git:(feat/sequelize-orm-register) ✗
Одна из лучших функций узла, которую вы можете использовать с NPM, – это скрипты пакетов. Таким образом, в вашем Package.json Вы можете установить некоторые команды, чтобы легко запустить Eslint из вашего проекта или вызовите его от вас Travis CI.
"scripts": { "start": "node index.js", "dev": "nodemon start", "lint": "./node_modules/.bin/eslint --ext .js config/ models/ routes/ seeders/ index.js", "lint-fix": "./node_modules/.bin/eslint --fix --ext .js config/ models/ routes/ seeders/ index.js", },
Это полезно, потому что теперь вы можете просто запустить простую команду для тестирования и исправления ваших небольших ошибок.
npm run lint npm run lint-fix
PS: Эта статья была впервые опубликована на appseed.us blog Отказ