You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
78 lines
4.3 KiB
78 lines
4.3 KiB
/* eslint-env node */
|
|
require('@rushstack/eslint-patch/modern-module-resolution');
|
|
|
|
module.exports = {
|
|
root: true,
|
|
'extends': [
|
|
'plugin:vue/vue3-essential',
|
|
'eslint:recommended',
|
|
'@vue/eslint-config-prettier/skip-formatting'
|
|
],
|
|
parserOptions: {
|
|
ecmaVersion: 'latest'
|
|
},
|
|
rules:{
|
|
'indent': [
|
|
'error',
|
|
4,
|
|
{
|
|
SwitchCase: 1
|
|
}
|
|
],
|
|
'max-len': ['error', {
|
|
'code': 160, // 指定最大代码长度
|
|
'ignoreStrings': true, // 忽略字符串中的字符长度
|
|
'ignoreUrls': true, // 忽略URL的长度
|
|
'ignoreComments': false, // 注释中的字符会计入长度限制
|
|
'ignoreTemplateLiterals': true, // 忽略模板字符串的长度
|
|
'tabWidth': 4 // 设置制表符的宽度
|
|
}],
|
|
'quotes': ['error', 'single'], // 强制使用一致的引号风格
|
|
'no-unused-expressions': 'error', // 禁止使用未使用的表达式
|
|
'no-console': 'error', // 禁止使用console
|
|
'semi': ['error', 'always'], // 启用 semi 规则,要求语句后总是使用分号,并将其设置为错误
|
|
// "new-cap": "error", //要求使用 new 关键字创建的实例的构造函数名必须大写。
|
|
'no-const-assign': 'error', //禁止给 const 声明的变量赋值
|
|
'no-duplicate-case': 'error', // 禁止 switch 语句中出现重复的 case
|
|
'no-extra-parens': 'error', // 限制不必要的括号
|
|
'no-fallthrough': 'error', //:禁止 switch 语句中的穿透行为
|
|
'no-multi-spaces': 'error', //禁止使用多个空格。
|
|
'no-trailing-spaces': 'error', //:禁止行尾有空格。
|
|
'no-undef': 'error', //:禁止使用未声明的变量。
|
|
'no-undef-init': 'error', //禁止初始化变量时使用 undefined。
|
|
'no-empty': 2, //块语句中的内容不能为空
|
|
'no-extra-semi': 2, //禁止多余的冒号
|
|
'no-func-assign': 2, //禁止重复的函数声明
|
|
'no-inline-comments': 2, //禁止行内备注
|
|
'space-before-function-paren': [
|
|
'error',
|
|
{
|
|
// "always" - 要求在函数名和参数列表之间总是有空白。
|
|
// "never" - 禁止在函数名和参数列表之间有空格。
|
|
anonymous: 'always', // "anonymous" - 指定匿名函数表达式前的空格要求("always" 或 "never")。
|
|
named: 'never', // "named" - 指定具名函数表达式前的空格要求("always" 或 "never")。
|
|
asyncArrow: 'always' // "asyncArrow" - 指定异步箭头函数前的空格要求("always" 或 "never")
|
|
}
|
|
],
|
|
'no-multiple-empty-lines': [1, { max: 2 }], //空行最多不能超过2行
|
|
'no-nested-ternary': 0, //禁止使用嵌套的三目运算
|
|
'no-redeclare': 2, //禁止重复声明变量
|
|
'no-shadow': 2, //外部作用域中的变量不能与它所包含的作用域中的变量或参数同名
|
|
// 'no-unused-vars': [2, { vars: 'all', args: 'after-used' }], //不能有声明后未被使用的变量或参数
|
|
'no-use-before-define': 2, //未定义前不能使用
|
|
'no-mixed-spaces-and-tabs': 'error', // 禁止在代码中混用空格和制表符
|
|
'lines-around-comment': [
|
|
'error',
|
|
{
|
|
beforeBlockComment: true, // beforeBlockComment: 在块级注释(以 /* 开头)之前需要有空行。
|
|
afterBlockComment: false, // afterBlockComment: 在块级注释之后需要有空行。
|
|
beforeLineComment: true, // beforeLineComment: 在行注释(以 // 开头)之前需要有空行。
|
|
afterLineComment: false, // afterLineComment: 在行注释之后需要有空行。
|
|
allowBlockStart: true, // allowBlockStart: 允许块级注释紧跟在函数或块的开始。
|
|
allowClassStart: true, // allowClassStart: 允许块级注释紧跟在类定义的开始。
|
|
allowObjectStart: true, // allowObjectStart: 允许块级注释紧跟在对象字面量的开始。
|
|
allowArrayStart: true // allowArrayStart: 允许块级注释紧跟在数组字面量的开始。
|
|
}
|
|
]
|
|
}
|
|
};
|
|
|