Skip to content

Commit b8441b5

Browse files
committed
feat: 配置保存时自动格式化
1 parent 99de03f commit b8441b5

5 files changed

Lines changed: 94 additions & 23 deletions

File tree

.eslintrc

Lines changed: 30 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,10 @@
4747
"semi": ["error", "always"],
4848
"spaced-comment": ["error", "always"],
4949
"no-multi-spaces": "error",
50-
"no-unused-expressions": ["error", { "allowShortCircuit": true, "allowTernary": true }],
50+
"no-unused-expressions": [
51+
"error",
52+
{ "allowShortCircuit": true, "allowTernary": true }
53+
],
5154
"no-param-reassign": ["error", { "props": true }],
5255
"no-return-assign": "error",
5356
"max-len": ["error", { "code": 140, "comments": 140 }],
@@ -59,20 +62,27 @@
5962
"object-curly-spacing": ["error", "always", { "arraysInObjects": true }],
6063
"comma-spacing": ["error", { "before": false, "after": true }],
6164
"arrow-spacing": ["error", { "before": true, "after": true }],
62-
"lines-between-class-members": ["error", "always", { "exceptAfterSingleLine": true }],
63-
"template-curly-spacing": ["error", "never"],
64-
"space-infix-ops": ["error"],
65-
"arrow-body-style": ["error", "as-needed"],
66-
"no-undef": "error",
67-
"no-multi-assign": "error",
68-
"no-nested-ternary": "error",
69-
"no-lonely-if": "error",
70-
"no-unneeded-ternary": "error",
71-
"no-case-declarations": "error",
72-
"object-curly-newline": "off",
73-
"array-bracket-spacing": "off",
74-
"space-before-function-paren": "error",
75-
"space-before-blocks": ["error", { "functions": "always", "keywords": "always", "classes": "always" }],
65+
"lines-between-class-members": [
66+
"error",
67+
"always",
68+
{ "exceptAfterSingleLine": true }
69+
],
70+
"template-curly-spacing": ["error", "never"],
71+
"space-infix-ops": ["error"],
72+
"arrow-body-style": ["error", "as-needed"],
73+
"no-undef": "error",
74+
"no-multi-assign": "error",
75+
"no-nested-ternary": "error",
76+
"no-lonely-if": "error",
77+
"no-unneeded-ternary": "error",
78+
"no-case-declarations": "error",
79+
"object-curly-newline": "off",
80+
"array-bracket-spacing": "off",
81+
"space-before-function-paren": "error",
82+
"space-before-blocks": [
83+
"error",
84+
{ "functions": "always", "keywords": "always", "classes": "always" }
85+
],
7686
"no-underscore-dangle": "off",
7787
"global-require": "off",
7888
"jsx-a11y/no-static-element-interactions": "off",
@@ -87,11 +97,14 @@
8797
"import/extensions": "off",
8898

8999
// react (eslint-plugin-react required)
90-
"react/jsx-filename-extension": ["error", { "extensions": [".js", ".jsx"] }],
100+
"react/jsx-filename-extension": [
101+
"error",
102+
{ "extensions": [".js", ".jsx"] }
103+
],
91104
"react/jsx-no-duplicate-props": ["error"],
92105
"react/jsx-indent-props": ["error", 2],
93106
"react/jsx-indent": ["error", 2],
94-
"react/jsx-first-prop-new-line": [ "error", "multiline" ],
107+
"react/jsx-first-prop-new-line": ["error", "multiline"],
95108
"react/prop-types": "off",
96109
"react/no-children-prop": "off",
97110

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
.env.local
2121

2222
# ide
23-
/.vscode
2423
/.idea
2524

2625
# jest

.vscode/extensions.json

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"recommendations": [
3+
"esbenp.prettier-vscode",
4+
"dbaeumer.vscode-eslint",
5+
"bradlc.vscode-tailwindcss",
6+
"ms-vscode.vscode-typescript-next",
7+
"formulahendry.auto-rename-tag",
8+
"christian-kohler.path-intellisense",
9+
"ms-vscode.vscode-json"
10+
]
11+
}

.vscode/settings.json

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
{
2+
"editor.formatOnSave": true,
3+
"editor.codeActionsOnSave": {
4+
"source.fixAll.eslint": "explicit",
5+
"source.organizeImports": "never"
6+
},
7+
"editor.defaultFormatter": "esbenp.prettier-vscode",
8+
"[javascript]": {
9+
"editor.defaultFormatter": "esbenp.prettier-vscode"
10+
},
11+
"[javascriptreact]": {
12+
"editor.defaultFormatter": "esbenp.prettier-vscode"
13+
},
14+
"[typescript]": {
15+
"editor.defaultFormatter": "esbenp.prettier-vscode"
16+
},
17+
"[typescriptreact]": {
18+
"editor.defaultFormatter": "esbenp.prettier-vscode"
19+
},
20+
"[json]": {
21+
"editor.defaultFormatter": "esbenp.prettier-vscode"
22+
},
23+
"[css]": {
24+
"editor.defaultFormatter": "esbenp.prettier-vscode"
25+
},
26+
"[less]": {
27+
"editor.defaultFormatter": "esbenp.prettier-vscode"
28+
},
29+
"[html]": {
30+
"editor.defaultFormatter": "esbenp.prettier-vscode"
31+
},
32+
"eslint.validate": [
33+
"javascript",
34+
"javascriptreact",
35+
"typescript",
36+
"typescriptreact"
37+
],
38+
"prettier.requireConfig": false,
39+
"prettier.useEditorConfig": false,
40+
"files.associations": {
41+
"*.jsx": "javascriptreact",
42+
"*.tsx": "typescriptreact"
43+
},
44+
"emmet.includeLanguages": {
45+
"javascript": "javascriptreact",
46+
"typescript": "typescriptreact"
47+
}
48+
}

package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,18 @@
1111
"watch": "rimraf dist/* && father-build --watch",
1212
"deploy": "npm run docs:build && npm run docs:deploy",
1313
"release": "npm run build && npm publish dist",
14-
"prettier": "prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"",
1514
"test": "umi-test",
1615
"test:coverage": "umi-test --coverage",
1716
"postversion": "dumi assets",
18-
"lint": "eslint ./src/components --ext .js,.jsx",
19-
"umi-lint": "umi-lint --eslint.ext='.js,jsx' ./src/components",
20-
"precommit": "umi-lint --staged --eslint --prettier --fix",
2117
"new:component": "cp -r tpls/new-component src/components/new-component",
2218
"cli-version": "node ./scripts/generate-version.js",
2319
"postinstall": "patch-package",
2420
"changelog": "conventional-changelog -p angular -i docs/log.md -s && git add docs/log.md",
25-
"changelog-all": "conventional-changelog --config -i docs/log1.md -s"
21+
"changelog-all": "conventional-changelog --config -i docs/log1.md -s",
22+
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
23+
"lint:fix": "eslint --ext .js,.jsx,.ts,.tsx --fix",
24+
"prettier": "prettier --write \"**/*.{js,jsx,ts,tsx,json,css,less,md}\"",
25+
"prettier:check": "prettier --check \"**/*.{js,jsx,ts,tsx,json,css,less,md}\""
2626
},
2727
"auto-changelog": {
2828
"output": "docs/log.md"

0 commit comments

Comments
 (0)