docs(prettier): add eslint docs
add README.md add config and ignore files
This commit is contained in:
5
eslint/.eslintignore
Normal file
5
eslint/.eslintignore
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
**/.git
|
||||||
|
**/.svn
|
||||||
|
**/.hg
|
||||||
|
**/dist
|
||||||
|
**/node_modules
|
||||||
30
eslint/.eslintrc.json
Normal file
30
eslint/.eslintrc.json
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"env": {
|
||||||
|
"browser": true,
|
||||||
|
"es2021": true
|
||||||
|
},
|
||||||
|
"parser": "@typescript-eslint/parser",
|
||||||
|
"parserOptions": {
|
||||||
|
"ecmaVersion": "latest",
|
||||||
|
"sourceType": "module"
|
||||||
|
},
|
||||||
|
"plugins": [
|
||||||
|
"@typescript-eslint",
|
||||||
|
"prettier"
|
||||||
|
],
|
||||||
|
"extends": [
|
||||||
|
"eslint:recommended",
|
||||||
|
"plugin:@typescript-eslint/recommended",
|
||||||
|
"prettier"
|
||||||
|
],
|
||||||
|
"rules": {
|
||||||
|
"@typescript-eslint/no-explicit-any": "off",
|
||||||
|
"prettier/prettier": "error",
|
||||||
|
"@typescript-eslint/no-unused-vars": "error",
|
||||||
|
// to enforce using type for object type definitions, can be type or interface
|
||||||
|
"@typescript-eslint/consistent-type-definitions": [
|
||||||
|
"error",
|
||||||
|
"type"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
42
eslint/README.md
Normal file
42
eslint/README.md
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
# 🛠️ ESLint
|
||||||
|
|
||||||
|
**ESLint** — это инструмент для анализа и автоматической проверки JavaScript/TypeScript-кода. Он помогает находить и устранять ошибки, несоответствия стилю и потенциальные баги **до запуска программы**.
|
||||||
|
**В данном примере ESLint используется в связке с prettier.**
|
||||||
|
---
|
||||||
|
## ⚙️ Конфигурация
|
||||||
|
|
||||||
|
`.eslintignore` - игнорирование форматирования
|
||||||
|
`.eslintrc.json` - файл конфигурации
|
||||||
|
|
||||||
|
| Правило | Описание |
|
||||||
|
| ------------------------------------------------------------------- | ------------------------------------------------------------------------- |
|
||||||
|
| `@typescript-eslint/no-explicit-any: "off"` | Разрешает использовать `any` (не запрещает явно указанный тип `any`) |
|
||||||
|
| `prettier/prettier: "error"` | Ошибки форматирования от Prettier будут отображаться как ESLint-ошибки |
|
||||||
|
| `@typescript-eslint/no-unused-vars: "error"` | Показывает ошибку, если переменная объявлена, но не используется |
|
||||||
|
| `@typescript-eslint/consistent-type-definitions: ["error", "type"]` | Требует использовать `type`, а не `interface` для описания типов объектов |
|
||||||
|
|
||||||
|
---
|
||||||
|
## 📦 Установка зависимостей
|
||||||
|
Установи необходимые пакеты:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm install --save-dev \
|
||||||
|
eslint \
|
||||||
|
@typescript-eslint/parser \
|
||||||
|
@typescript-eslint/eslint-plugin \
|
||||||
|
prettier \
|
||||||
|
eslint-plugin-prettier \
|
||||||
|
eslint-config-prettier
|
||||||
|
```
|
||||||
|
---
|
||||||
|
## 🚀 Использование
|
||||||
|
Проверить весь проект:
|
||||||
|
```bash
|
||||||
|
npx eslint . --ext .ts
|
||||||
|
```
|
||||||
|
Автоматически исправить:
|
||||||
|
```bash
|
||||||
|
npx eslint . --ext .ts --fix
|
||||||
|
```
|
||||||
|
|
||||||
|
Плагин ESLint для `VSCode`: [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint)
|
||||||
Reference in New Issue
Block a user