@alicevia/eslint-config-vue 1.0.18 → 1.0.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. package/index.js +75 -14
  2. package/package.json +1 -1
package/index.js CHANGED
@@ -6,21 +6,81 @@ module.exports = {
6
6
  },
7
7
  extends: [
8
8
  'eslint:recommended',
9
- 'plugin:vue/vue3-essential',
9
+ 'plugin:vue/vue3-recommended',
10
10
  'plugin:@typescript-eslint/recommended',
11
11
  ],
12
12
  overrides: [
13
13
  {
14
- file:'*.vue',
15
- rules:{
16
- 'vue/multi-word-component-names': [
17
- 'error',
18
- {
19
- ignores: ['index'], //需要忽略的组件名
20
- },
21
- ],
22
- }
23
- }
14
+ files: ['*.vue'],
15
+ rules: {
16
+ 'vue/max-attributes-per-line': 'off',
17
+ 'vue/no-v-html': 'off',
18
+ 'vue/require-prop-types': 'off',
19
+ 'vue/require-default-prop': 'off',
20
+ 'vue/multi-word-component-names': 'off',
21
+ 'vue/prefer-import-from-vue': 'off',
22
+
23
+ // reactivity transform
24
+ 'vue/no-setup-props-destructure': 'off',
25
+ 'vue/block-tag-newline': ['error', {
26
+ singleline: 'always',
27
+ multiline: 'always',
28
+ }],
29
+ 'vue/component-name-in-template-casing': ['error', 'PascalCase'],
30
+ 'vue/component-options-name-casing': ['error', 'PascalCase'],
31
+ 'vue/custom-event-name-casing': ['error', 'camelCase'],
32
+ 'vue/define-macros-order': ['error', {
33
+ order: ['defineProps', 'defineEmits'],
34
+ }],
35
+ 'vue/html-comment-content-spacing': ['error', 'always', {
36
+ exceptions: ['-'],
37
+ }],
38
+ 'vue/no-restricted-v-bind': ['error', '/^v-/'],
39
+ 'vue/no-useless-v-bind': 'error',
40
+ 'vue/no-v-text-v-html-on-component': 'error',
41
+ 'vue/padding-line-between-blocks': ['error', 'always'],
42
+ 'vue/prefer-separate-static-class': 'error',
43
+ // // extensions
44
+ // 'vue/array-bracket-spacing': ['error', 'never'],
45
+ // 'vue/arrow-spacing': ['error', { before: true, after: true }],
46
+ // 'vue/block-spacing': ['error', 'always'],
47
+ // 'vue/brace-style': ['error', 'stroustrup', { allowSingleLine: true }],
48
+ // 'vue/comma-dangle': ['error', 'always-multiline'],
49
+ // 'vue/comma-style': ['error', 'last'],
50
+ // 'vue/dot-location': ['error', 'property'],
51
+ // 'vue/dot-notation': ['error', { allowKeywords: true }],
52
+ // 'vue/eqeqeq': ['error', 'smart'],
53
+ // // 'vue/func-call-spacing': ['off', 'never'],
54
+ // 'vue/no-constant-condition': 'warn',
55
+ // 'vue/no-empty-pattern': 'error',
56
+ // 'vue/no-extra-parens': ['error', 'functions'],
57
+ // 'vue/no-irregular-whitespace': 'error',
58
+ // 'vue/no-loss-of-precision': 'error',
59
+ // 'vue/no-restricted-syntax': [
60
+ // 'error',
61
+ // 'DebuggerStatement',
62
+ // 'LabeledStatement',
63
+ // 'WithStatement',
64
+ // ],
65
+ // 'vue/no-sparse-arrays': 'error',
66
+ // 'vue/object-property-newline': ['error', { allowMultiplePropertiesPerLine: true }],
67
+ // 'vue/object-shorthand': [
68
+ // 'error',
69
+ // 'always',
70
+ // {
71
+ // ignoreConstructors: false,
72
+ // avoidQuotes: true,
73
+ // },
74
+ // ],
75
+ // 'vue/operator-linebreak': ['error', 'before'],
76
+ // 'vue/prefer-template': 'error',
77
+ // 'vue/quote-props': ['error', 'consistent-as-needed'],
78
+ // 'vue/space-in-parens': ['error', 'never'],
79
+ // 'vue/space-infix-ops': 'error',
80
+ // 'vue/space-unary-ops': ['error', { words: true, nonwords: false }],
81
+ // 'vue/template-curly-spacing': 'error',
82
+ },
83
+ },
24
84
  ],
25
85
  parser: 'vue-eslint-parser',
26
86
  parserOptions: {
@@ -38,10 +98,11 @@ module.exports = {
38
98
  indent: ['error', 2],
39
99
  semi: ['error', 'never'],
40
100
  'comma-dangle': ['error', 'always-multiline'],
101
+ 'comma-spacing': ['error', { before: false, after: true }],
41
102
  'space-before-function-paren': ['error', 'always'],
42
- 'no-multiple-empty-lines': ['error', { max: 2, maxEOF: 0,maxBOF: 0 }],
43
- 'key-spacing': ['error', { mode: 'strict'}],
44
- 'arrow-spacing': ['error',{ btrueefore: true, after: }],
103
+ 'no-multiple-empty-lines': ['error', { max: 2, maxEOF: 0, maxBOF: 0 }],
104
+ 'key-spacing': ['error', { mode: 'strict' }],
105
+ 'arrow-spacing': ['error', { before: true, after: true }],
45
106
  'object-curly-spacing': ['error', 'always'],
46
107
  'no-console': ['error', { allow: ['warn', 'error'] }],
47
108
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alicevia/eslint-config-vue",
3
- "version": "1.0.18",
3
+ "version": "1.0.20",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "files": [