-
Notifications
You must be signed in to change notification settings - Fork 0
/
.eslintrc.js
72 lines (71 loc) · 2.3 KB
/
.eslintrc.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
module.exports = {
env: {
browser: true,
es2021: true,
node: true
},
extends: ['plugin:react/recommended', 'airbnb', 'prettier'],
parser: '@typescript-eslint/parser',
parserOptions: {
ecmaFeatures: {
jsx: true
},
ecmaVersion: 12,
sourceType: 'module'
},
plugins: ['react', '@typescript-eslint'],
rules: {
'import/extensions': [
2,
'ignorePackages',
{
ts: 'never',
tsx: 'never',
json: 'never',
js: 'never'
}
],
'no-use-before-define': 'off',
'@typescript-eslint/no-use-before-define': ['off'],
'react/jsx-filename-extension': [
1,
{ extensions: ['.js', '.jsx', '.ts', '.tsx'] }
],
quotes: [2, 'single'], // 单引号
'no-console': 0, // 不禁用console
'no-debugger': 0,
'no-var': 0, // 对var警告
semi: 0, // 不强制使用分号
'no-irregular-whitespace': 0, // 不规则的空白不允许
'no-trailing-spaces': 1, // 一行结束后面有空格就发出警告
'eol-last': 0, // 文件以单一的换行符结束
'no-unused-vars': [1, { vars: 'all', args: 'after-used' }], // 不能有声明后未被使用的变量或参数
'no-underscore-dangle': 0, // 标识符不能以_开头或结
camelcase: 0, // 强制驼峰法命名
'jsx-quotes': [2, 'prefer-double'], // 强制在JSX属性(jsx-quotes)中一致使用双引号
'comma-dangle': 0, // 对象字面量项尾不能有逗号
'no-mixed-spaces-and-tabs': 0, // 禁止混用tab和空格
'prefer-arrow-callback': 0, // 比较喜欢箭头回调
'arrow-parens': 0, // 箭头函数用小括号括起来
'arrow-spacing': 0, //= >的前/后括号
'import/no-extraneous-dependencies': 0,
'no-shadow': 'off',
'import/prefer-default-export': 0,
'no-param-reassign': 0,
'react/destructuring-assignment': 0,
'react/require-default-props': 0
},
settings: {
'import/resolver': {
node: {
// 指定 eslint-plugin-import 解析的后缀名
extensions: ['.ts', '.tsx', '.js', '.json']
},
typescript: {
// 配置 eslint-import-resolver-typescript 读取 tsconfig.json 的路径
// 目前用不着,先注释掉
// directory: [resolve('./src/tsconfig.json'), resolve('./scripts/tsconfig.json')],
}
}
}
};