|
| 1 | +module.exports = { |
| 2 | + env: { |
| 3 | + browser: true, |
| 4 | + commonjs: true, |
| 5 | + es6: true |
| 6 | + }, |
| 7 | + extends: ['prettier'], |
| 8 | + globals: { |
| 9 | + process: true, |
| 10 | + __dirname: true, |
| 11 | + document: true, |
| 12 | + localStorage: true, |
| 13 | + window: true, |
| 14 | + defineProps: true, |
| 15 | + defineEmits: true, |
| 16 | + defineExpose: true, |
| 17 | + ObjTy: true, |
| 18 | + axiosConfigTy: true |
| 19 | + }, |
| 20 | + parser: '@typescript-eslint/parser', |
| 21 | + parserOptions: { |
| 22 | + ecmaFeatures: { |
| 23 | + experimentalObjectRestSpread: true, |
| 24 | + jsx: true |
| 25 | + }, |
| 26 | + sourceType: 'module', |
| 27 | + ecmaVersion: 7 |
| 28 | + }, |
| 29 | + plugins: ['react'], |
| 30 | + rules: { |
| 31 | + //quotes: [2, 'single'], //单引号 |
| 32 | + 'no-console': 0, //不禁用console |
| 33 | + 'no-debugger': 2, //禁用debugger |
| 34 | + 'no-var': 0, //对var警告 |
| 35 | + 'no-irregular-whitespace': 0, //不规则的空白不允许 |
| 36 | + 'no-trailing-spaces': 1, //一行结束后面有空格就发出警告 |
| 37 | + 'eol-last': 0, //文件以单一的换行符结束 |
| 38 | + 'no-unused-vars': 1, |
| 39 | + //'no-unused-vars': [2, { vars: 'all', args: 'after-used' }], //不能有声明后未被使用的变量或参数 |
| 40 | + 'no-underscore-dangle': 0, //标识符不能以_开头或结尾 |
| 41 | + 'no-alert': 2, //禁止使用alert confirm prompt |
| 42 | + 'no-lone-blocks': 0, //禁止不必要的嵌套块 |
| 43 | + 'no-class-assign': 2, //禁止给类赋值 |
| 44 | + 'no-cond-assign': 2, //禁止在条件表达式中使用赋值语句 |
| 45 | + 'no-const-assign': 2, //禁止修改const声明的变量 |
| 46 | + 'no-delete-var': 2, //不能对var声明的变量使用delete操作符 |
| 47 | + 'no-dupe-keys': 2, //在创建对象字面量时不允许键重复 |
| 48 | + 'no-duplicate-case': 2, //switch中的case标签不能重复 |
| 49 | + 'no-dupe-args': 2, //函数参数不能重复 |
| 50 | + 'no-empty': 2, //块语句中的内容不能为空 |
| 51 | + 'no-func-assign': 2, //禁止重复的函数声明 |
| 52 | + 'no-invalid-this': 0, //禁止无效的this,只能用在构造器,类,对象字面量 |
| 53 | + 'no-redeclare': 2, //禁止重复声明变量 |
| 54 | + 'no-spaced-func': 2, //函数调用时 函数名与()之间不能有空格 |
| 55 | + 'no-this-before-super': 0, //在调用super()之前不能使用this或super |
| 56 | + 'no-undef': 2, //不能有未定义的变量 |
| 57 | + //'no-use-before-define': 1, //未定义前不能使用 |
| 58 | + 'jsx-quotes': [2, 'prefer-double'], //强制在JSX属性(jsx-quotes)中一致使用双引号 |
| 59 | + 'react/display-name': 0, //防止在React组件定义中丢失displayName |
| 60 | + 'react/forbid-prop-types': [2, { forbid: ['any'] }], //禁止某些propTypes |
| 61 | + //'react/jsx-boolean-value': 2, //在JSX中强制布尔属性符号 |
| 62 | + 'react/jsx-closing-bracket-location': 1, //在JSX中验证右括号位置 |
| 63 | + 'react/jsx-curly-spacing': [2, { when: 'never', children: true }], //在JSX属性和表达式中加强或禁止大括号内的空格。 |
| 64 | + //'react/jsx-indent-props': [2, 4], //验证JSX中的props缩进 |
| 65 | + 'react/jsx-key': 2, //在数组或迭代器中验证JSX具有key属性 |
| 66 | + //'react/jsx-max-props-per-line': [1, { maximum: 1 }], // 限制JSX中单行上的props的最大数量 |
| 67 | + 'react/jsx-no-bind': 0, //JSX中不允许使用箭头函数和bind |
| 68 | + 'react/jsx-no-duplicate-props': 2, //防止在JSX中重复的props |
| 69 | + 'react/jsx-no-literals': 0, //防止使用未包装的JSX字符串 |
| 70 | + 'react/jsx-no-undef': 1, //在JSX中禁止未声明的变量 |
| 71 | + 'react/jsx-pascal-case': 0, //为用户定义的JSX组件强制使用PascalCase |
| 72 | + //'react/jsx-sort-props': 2, //强化props按字母排序 |
| 73 | + 'react/jsx-uses-react': 1, //防止反应被错误地标记为未使用 |
| 74 | + 'react/jsx-uses-vars': 2, //防止在JSX中使用的变量被错误地标记为未使用 |
| 75 | + 'react/no-danger': 0, //防止使用危险的JSX属性 |
| 76 | + 'react/no-did-mount-set-state': 0, //防止在componentDidMount中使用setState |
| 77 | + 'react/no-did-update-set-state': 1, //防止在componentDidUpdate中使用setState |
| 78 | + 'react/no-direct-mutation-state': 2, //防止this.state的直接变异 |
| 79 | + 'react/no-multi-comp': 2, //防止每个文件有多个组件定义 |
| 80 | + 'react/no-set-state': 0, //防止使用setState |
| 81 | + 'react/no-unknown-property': 2, //防止使用未知的DOM属性 |
| 82 | + 'react/prefer-es6-class': 2, //为React组件强制执行ES5或ES6类 |
| 83 | + 'react/prop-types': 0, //防止在React组件定义中丢失props验证 |
| 84 | + 'react/react-in-jsx-scope': 2, //使用JSX时防止丢失React |
| 85 | + 'react/self-closing-comp': 0, //防止没有children的组件的额外结束标签 |
| 86 | + 'react/sort-comp': 2, //强制组件方法顺序 |
| 87 | + 'no-extra-boolean-cast': 0, //禁止不必要的bool转换 |
| 88 | + 'react/no-array-index-key': 0, //防止在数组中遍历中使用数组key做索引 |
| 89 | + 'react/no-deprecated': 1, //不使用弃用的方法 |
| 90 | + 'react/jsx-equals-spacing': 2, //在JSX属性中强制或禁止等号周围的空格 |
| 91 | + 'no-unreachable': 1, //不能有无法执行的代码 |
| 92 | + 'comma-dangle': 2, //对象字面量项尾不能有逗号 |
| 93 | + 'no-mixed-spaces-and-tabs': 0, //禁止混用tab和空格 |
| 94 | + 'prefer-arrow-callback': 0, //比较喜欢箭头回调 |
| 95 | + 'arrow-parens': 0, //箭头函数用小括号括起来 |
| 96 | + 'arrow-spacing': 0 //=>的前/后括号 |
| 97 | + }, |
| 98 | + settings: { |
| 99 | + 'import/ignore': ['node_modules'] |
| 100 | + } |
| 101 | +} |
0 commit comments