код форматирования eslint
В этой статье в качестве примера используется проект Vue.
использоватьVue-CLIПри создании проекта выберите ESlint.После загрузки зависимостей откройте проект с помощью VSCode.
Установите плагин ESLint, затемFile -> Preference-> Settings(Если установлен пакет китайских плагинов, это должен быть Файл -> Параметры -> Настройки), найдите eslint и нажмитеEdit in setting.json
Добавьте следующие параметры в файл конфигурации
"editor.codeActionsOnSave": {
"source.fixAll": true,
},
"eslint.validate": [
"javascript",
"javascriptreact",
"typescript"
],
"eslint.alwaysShowStatus": true,
"stylelint.validate": [
"css",
"less",
"postcss",
"scss",
"vue",
"sass"
],
Также убедитесь, что строка состояния ESlint в правом нижнем углу VSCode работает. Если вы не видите логотип Eslint в правом нижнем углу, выполните указанные выше действия, чтобы открыть его.setting.json, плюс эта строка кода:
"eslint.alwaysShowStatus": true,
После настройки VSCode будет основан на вашем текущем проекте..eslintrcДокументируйте правила для проверки и форматирования кода.
TypeScript
Скачать плагин
npm install --save-dev typescript @typescript-eslint/parser @typescript-eslint/eslint-plugin
существует.eslintrcФайл конфигурации, добавьте следующие два элемента конфигурации:
"parser": "@typescript-eslint/parser",
"plugins": [
"@typescript-eslint"
],
в корневом каталогеpackage.jsonдокументscriptsДобавьте в опции следующие элементы конфигурации:
"scripts": {
"lint": "eslint --ext .js,.ts,.tsx test/ src/",
},
test/ src/это каталог, который вы хотите проверить. После модификации теперь и ts-файл можно автоматически форматировать.
если вы используетеVue-CLIСоздайте проект и хотите отформатировать код TypeScript, вам нужно.eslintrc.jsФайл добавляет или изменяет следующие элементы:
parser: 'vue-eslint-parser',
plugins: [
'@typescript-eslint',
],
parserOptions: {
parser: '@typescript-eslint/parser',
ecmaVersion: 2020,
},
так что вы можете отформатировать.js .ts .vueфайл.
код форматирования stylelint
Скачать зависимости
npm install --save-dev stylelint stylelint-config-standard
Создайте новый в корневом каталоге проекта.stylelintrc.jsonфайл и введите следующее:
{
"extends": "stylelint-config-standard"
}
VSCode добавитьstylelintПлагин:
Тогда вы сможете увидеть эффект.
Если вы хотите изменить правила плагина по умолчанию, вы можете увидетьофициальная документация, который предоставляет 170 модификаций правил. Например, если я хочу использовать 4 пробела в качестве отступа, я могу настроить его следующим образом:
{
"extends": "stylelint-config-standard",
"rules": {
"indentation": 4
}
}
если вы хотите отформатироватьsass scssфайл, нужно скачатьstylelint-scssПлагин:
npm i -D stylelint-scss
Затем вы можете отформатировать файл scss.
расширять
Как отформатировать HTML-код в файлах HTML, Vue (или других суффиксах)?
.vueМожно использовать HTML-код файлаeslint-plugin-vueплагин для форматирования:
extends: [
'plugin:vue/recommended', // 在 .eslintrc.js 文件中加上这一行代码
'@vue/airbnb',
],
Другие файлы HTML должны использовать форматирование, которое поставляется с VSCode.shift + alt + f. Предполагая, что в VSCode в данный момент открыт файл HTML, нажмитеshift + alt + fВам будет предложено выбрать спецификацию форматирования. Если подсказки нет, значит уже есть спецификация форматирования по умолчанию, тогда весь код HTML-файла будет отформатирован, а правила форматирования также можно настроить самостоятельно.
Сложные проблемы
Unknown word (CssSyntaxError)ошибка
Решение состоит в том, чтобы понизить установку VSCode.stylelintПлагины, щелкните маленькую шестеренку рядом с плагином, а затем нажмитеInstall Another Version, выберите другую версию для установки.
Выбрать0.87.6Версия установлена, и функция автоматического форматирования css возвращается в нормальное состояние.
халатное отношение.vueНедопустимое правило проверки HTML-шаблона в файле
Например, если вы установите длину текста кода на строку HTML-шаблона равной 100, eslint сообщит об ошибке при превышении этой длины. На этом этапе, если вы все еще хотите превысить эту длину, вы можете игнорировать это правило:
/* eslint-disable max-len */
Обратите внимание, что приведенная выше строка кода, которая игнорирует проверку, не вступит в силу, поскольку этот комментарий является комментарием JavaScript, нам нужно изменить формат комментария на HTML, чтобы игнорирование проверки вступило в силу:
<!-- eslint-disable max-len -->