HuLa/.eslintrc.cjs

57 lines
1.6 KiB
JavaScript
Raw Normal View History

module.exports = {
// 运行环境
env: {
browser: true, // 浏览器
es6: true, // es6语法
jest: true
},
parser: 'vue-eslint-parser',
parserOptions: {
ecmaVersion: 'latest',
parser: '@typescript-eslint/parser',
sourceType: 'module',
jsxPragma: 'React',
ecmaFeatures: {
jsx: true
}
},
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
'plugin:vue/vue3-essential',
'plugin:prettier/recommended'
],
overrides: [
{
env: {
node: true
},
files: ['.eslintrc.{js,cjs}'],
parserOptions: {
sourceType: 'script'
}
}
],
plugins: ['@typescript-eslint', 'vue'],
rules: {
'@typescript-eslint/no-non-null-assertion': 'off',
/** 允许ts使用命名空间 */
'@typescript-eslint/no-namespace': 'off',
/**
* 使用新vue3.3的defineProps解构语法需要关闭这个校验
* eslint-plugin-vue新版本已废弃 vue/no-setup-props-destructure,如果新版本eslint-plugin-vue
* 需要改成vue/no-setup-props-reactivity-loss规则
* */
'vue/no-setup-props-destructure': 'off',
'no-undef': 'off',
'no-var': 'error', // 不能使用var
'no-multiple-empty-lines': ['warn', { max: 2 }], // 不允许多个空行
quotes: [1, 'single'], //引号类型 `` "" ''
semi: ['error', 'never'], // 不允许在末尾加分号
'vue/multi-word-component-names': 'off', //关闭组件命名规则
'@typescript-eslint/no-explicit-any': 'off', // 关闭any校验
'no-redeclare': 2, //禁止重复声明变量
'eol-last': 'off' // 关闭行尾符linebreak-style的校验
}
}