1. @typescript-eslint/no-unnecessary-type-arguments
  2. 当类型参数和默认值相同时,不允许显式使用
  3. @typescript-eslint/no-unnecessary-type-assertion
  4. 禁止不必要的类型断言
  5. @typescript-eslint/no-unnecessary-type-constraint
  6. 不允许在泛型中使用不必要的约束条件
  7. @typescript-eslint/no-unused-expressions
  8. 代码中禁止包含未使用的表达式
  9. @typescript-eslint/no-unused-vars
  10. 禁止定义未使用的变量
  11. @typescript-eslint/no-useless-constructor
  12. 禁止不必要的构造函数
  13. @typescript-eslint/prefer-enum-initializers
  14. 推荐显式初始化每个枚举成员值
  15. @typescript-eslint/prefer-for-of
  16. 强制使用“for-of”循环而不是标准“for”循环
  17. @typescript-eslint/prefer-function-type
  18. 强制使用函数类型而不是带有签名的对象类型
  19. @typescript-eslint/prefer-includes
  20. 强制使用“includes”方法而不是“indexOf”方法
  21. @typescript-eslint/prefer-nullish-coalescing
  22. 强制使用空合并运算符(??)而不是逻辑运算符
  23. @typescript-eslint/prefer-optional-chain
  24. 强制使用链式可选表达式,而不是链式逻辑与、否定逻辑或、或空对象
  25. @typescript-eslint/prefer-readonly
  26. 如果私有成员从未在构造函数之外进行修改,则要求将其标记为“只读”
  27. @typescript-eslint/prefer-readonly-parameter-types
  28. 要求将函数参数解析为“只读”类型,以防止参数被修改而产生一些副作用
  29. @typescript-eslint/prefer-reduce-type-parameter
  30. 调用“Array#reduce”时推荐使用类型参数而不是强制转换类型
  31. @typescript-eslint/prefer-regexp-exec
  32. 如果未提供全局标志,推荐使用RegExp#exec”,而不是“String#match”
  33. @typescript-eslint/prefer-string-starts-ends-with
  34. 强制使用“String#startsWith”和“String#endsWith”而不是其他检查子字符串的等效方法
  35. @typescript-eslint/promise-function-async
  36. 要求任何返回Promise的函数或方法标记为async
  37. @typescript-eslint/quotes
  38. 强制使用一致的反引号、双引号或单引号风格
  39. @typescript-eslint/require-array-sort-compare
  40. 要求调用“Array#sort”时,始终提供“compareFunction”
  41. @typescript-eslint/require-await
  42. 异步函数必须包含“await”
  43. @typescript-eslint/restrict-plus-operands
  44. 要求加法的两个操作数都是相同的类型,并且是“bigint”、“number”或“string”
  45. @typescript-eslint/restrict-template-expressions
  46. 要求模板表达式中的变量为“string”类型
  47. @typescript-eslint/return-await
  48. 要求异步函数返回“await”
  49. @typescript-eslint/semi
  50. 要求或不允许使用分号,例如never不允许使用分号,always允许使用分号

    "@typescript-eslint/semi": [
      "error",
      "never"
    ]
  51. @typescript-eslint/space-before-function-paren
  52. 强制在函数名和括号之间保持一致的空格风格
  53. @typescript-eslint/space-infix-ops
  54. 运算符前后要求有空格
  55. @typescript-eslint/strict-boolean-expressions
  56. 不允许在布尔表达式中使用非布尔类型
  57. @typescript-eslint/switch-exhaustiveness-check
  58. 要求switch语句对于联合类型中值的判断是详尽无遗的
  59. @typescript-eslint/triple-slash-reference
  60. 不允许某些三斜杠引用,推荐使用ES6风格的导入声明
  61. @typescript-eslint/type-annotation-spacing
  62. 类型注释前后需要一致的空格风格
  63. @typescript-eslint/typedef
  64. 在某些位置需要类型注释
  65. @typescript-eslint/unbound-method
  66. 强制类作用域中的方法在预期范围内调用
  67. @typescript-eslint/unified-signatures
  68. 如果两个重载函数可以用联合类型参数(|)、可选参数(?)或者剩余参数(...)来重构成一个函数,不允许使用重载
  69. prefer-const
  70. 推荐声明后未修改值的变量用const关键字来声明
  71. eqeqeq
  72. 要求使用===和!==
  73. @security/no-commented-code
  74. 不使用的代码段建议直接删除,不允许通过注释的方式保留
  75. @security/no-cycle
  76. 禁止使用循环依赖
  77. @security/no-unsafe-aes
  78. 该规则禁止在AES加密算法中使用不安全的ECB加密模式,推荐使用Petal Aegis SDK中的安全AES接口
  79. @security/no-unsafe-dh
  80. 该规则禁止使用不安全的DH密钥协商算法
  81. @security/no-unsafe-dh-key
  82. 该规则禁止使用不安全的DH密钥
  83. @security/no-unsafe-dsa
  84. 该规则禁止使用不安全的DSA签名算法
  85. @security/no-unsafe-dsa-key
  86. 该规则禁止使用不安全的DSA密钥
  87. @security/no-unsafe-ecdsa
  88. 该规则禁止在ECDSA签名算法中使用不安全的SHA1摘要算法,推荐使用Petal Aegis SDK中的安全ECDSA接口
  89. @security/no-unsafe-hash
  90. 该规则使用禁止不安全的哈希算法
  91. @security/no-unsafe-mac
  92. 该规则禁止在MAC消息认证算法中使用不安全的哈希算法
  93. @security/no-unsafe-rsa-encrypt
  94. 该规则禁止使用不安全的RSA非对称加密算法
  95. @security/no-unsafe-rsa-key
  96. 该规则禁止使用不安全的RSA密钥
  97. @security/no-unsafe-rsa-sign
  98. 该规则禁止不安全的RSA签名算法
  99. @performance/high-frequency-log-check
  100. 不建议在高频函数中使用Hilog

龙儿筝
1 声望2 粉丝