предисловие
Не знаю, сталкивались ли вы когда-нибудь с такой ситуацией, то есть, когда вы смотрите на код фронтенда других мелких партнеров по команде, вам некомфортно, потому что привычки и редакторы другие, да и стиль написанный код также отличается. Это хороший выбор для удобства чтения кода команды единого формата.
Установить зависимости
Что мы в конечном итоге надеемсяgitПроверьте стиль перед отправкой и отправьте после форматирования, иначе будет сообщено об ошибке. Выбор стиля кода более популяренprettier, он будет произвольно форматировать код в соответствии с файлом конфигурации.Что касается конкретных правил конфигурации, это хорошо обсудить между партнерами по команде. а такжеhuskyЭто эквивалентно предоставлению нам ряда функций ловушек в процессе отправки git, которые мы будем использовать здесь.pre-commitХук, сначала устанавливаем зависимости:
yarn add husky prettier -D
Настройте правила более красивого форматирования
мы можем использовать.prettierrcфайлы также можно найти вpackage.jsonДобавляйте конфигурации в файлы, но рекомендуется здесь.prettierrcдокумент:
{
"arrowParens": "always", //剪头函数参数是否使用()
"bracketSpacing": false, // {foo: xx}还是{ foo: xx }
"jsxSingleQuote": true, // jsx是否使用单引号
"jsxBracketSameLine": false,
"semi": true, // 是否每句后都加分号
"singleQuote": true, // 是否使用单引号
"tabWidth": 2, // tab占用的字符数
"trailingComma": "es5"
}
Настроить хаски-хук
Здесь используется отдельный файл конфигурации.huskyrc, непосредственно в коде конфигурации
{
"hooks": {
"pre-commit": "lint-staged" // pre-commit,提交前的钩子
}
}
здесьlint-stagedЕго также необходимо установить отдельно. Это необходимо сделать перед отправкой. Сначала установите зависимости.
yarn add lint-staged -D
конфигурационный файл.lintstagedrcследующим образом:
{
"src/**/*.js?(x)": [
"prettier --write",
"eslint --fix",
"git add"
],
"src/**/*.{css,less,scss}": [
"stylelint --fix",
"git add"
]
}
Вероятно, в первую очередь используются документы, соответствующие требованиям.prettierотформатировать, а затем использоватьeslintРемонт, если установленeslintЕсли да, то последний должен представитьgit;
постскриптум
Конечно, если вы хотите отформатировать код локально, вы также можете найти соответствующий редактор в используемом вами редакторе.prettierПлагины здесь не раскрываются. и мы можемpackage.jsonизscriptДобавьте к объекту набор команд для форматирования кода:
"eslint": "prettier --check --write src/**/*.js?(x)"