前端格式化项目
1. eslint+prettier
一、安装
# 安装eslint
bun i -D eslint @typescript-eslint/eslint-plugin eslint-plugin-import @typescript-eslint/parser
# 安装全局prettier
bun i -g prettier
# 使用prettier手动格式化
prettier --write .
vscode插件:eslint+prettier 设置开启 save时format 并且格式选择prettier
二、配置
1. eslint配置 .eslintrc.cjs
module.exports = {
root: true,
env: { browser: true, es2020: true, node: true },
extends: [
'eslint:recommended',
'plugin:react/recommended',
'plugin:react/jsx-runtime',
'plugin:@typescript-eslint/recommended',
'plugin:react-hooks/recommended',
'plugin:prettier/recommended',
'eslint-config-prettier',
],
// ... 更多规则配置
}
2. prettier配置
// .prettierrc
{
"useTabs": false,
"tabWidth": 2,
"printWidth": 100,
"singleQuote": true,
"trailingComma": "all",
"semi": false
}
2. eslint + @antfu/eslint-config
一、安装
bun i -D eslint @typescript-eslint/eslint-plugin eslint-plugin-import @typescript-eslint/parser
bun i -D eslint-plugin-format
bun i -D @antfu/eslint-config
二、配置
// eslint.config.mjs
import antfu from '@antfu/eslint-config'
export default antfu({
ignores: ['node_modules', 'dist'],
rules: {
'no-console': 'warn',
},
})
3.Lint Staged(提交前自动格式化)
{
"simple-git-hooks": {
"pre-commit": "pnpm lint-staged"
},
"lint-staged": {
"*": "eslint --fix"
}
}
npm i -D lint-staged simple-git-hooks
npx simple-git-hooks