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.
 
 
pac-auth/.eslintrc.js

89 lines
5.0 KiB

module.exports = {
parser: "@typescript-eslint/parser",
parserOptions: {
project: "tsconfig.json",
tsconfigRootDir: __dirname,
sourceType: "module"
},
plugins: ["@typescript-eslint/eslint-plugin", "prettier"],
extends: [
"plugin:@typescript-eslint/recommended",
"plugin:prettier/recommended",
"prettier"
],
root: true,
env: {
node: true,
jest: true
},
ignorePatterns: [".eslintrc.js"],
rules: {
"max-len": ["error", {
"code": 160, // 指定最大代码长度
"ignoreStrings": true, // 忽略字符串中的字符长度
"ignoreUrls": true, // 忽略URL的长度
"ignoreComments": false, // 注释中的字符会计入长度限制
"ignoreTemplateLiterals": true, // 忽略模板字符串的长度
"tabWidth": 4 // 设置制表符的宽度
}],
"@typescript-eslint/interface-name-prefix": "off",
"@typescript-eslint/explicit-function-return-type": "off",
"@typescript-eslint/explicit-module-boundary-types": "off",
"@typescript-eslint/no-explicit-any": "off",
"indent": [
"error",
4,
{
SwitchCase: 1
}
], // 1 表示在 switch 语句中,case 和 default 语句需要与 switch 的起始位置对齐,并且缩进一个级别(即 4 个空格)
// "curly": "error", // 所有的控制语句(if, for, while 等)使用大括号括起来,即使它们只包含单个语句。
"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: 允许块级注释紧跟在数组字面量的开始。
}
]
}
};