- @cross-device-app-dev/font-size
- 字体大小要求至少为8fp以便于阅读
- @cross-device-app-dev/grid-columns-span
- 不推荐开发者将栅格中所有的GridCol子组件只设置span属性,且值与父组件的columns属性相等
- @cross-device-app-dev/grid-span-value
- 在栅格布局组件GridCol中,span和offset不建议使用小数
- @cross-device-app-dev/size-unit
- 组件通用属性width、height和size,应当使用vp作为单位
- @cross-device-app-dev/touch-target-size
- 组件通用属性responseRegion点击热区需满足最小尺寸要求
- @cross-device-app-dev/sidebar-navigation
- 对于2in1和tablet设备,应将Tabs组件设置为侧边导航栏
- @cross-device-app-dev/color-contrast
- 文本和背景之间的颜色对比度至少为4.5:1以确保可读性
- @hw-stylistic/array-bracket-spacing
- 强制数组“[”之后和“]”之前加空格
- @hw-stylistic/brace-style
- 强制大括号和语句位于同一行
- @hw-stylistic/comma-spacing
- 强制数组元素和函数中多个参数之间的逗号后面加空格,逗号前不加空格
- @hw-stylistic/curly
- 条件语句和循环语句的逻辑代码必须写在大括号中
- @hw-stylistic/file-naming-convention
- 强制代码文件和资源文件保持一致的命名风格
- @hw-stylistic/indent
- 强制switch语句中的case和default缩进一层
- @hw-stylistic/keyword-spacing
- 在关键字前后强制加空格
- @hw-stylistic/max-len
- 强制代码行最大长度为120个字符
- @hw-stylistic/no-multi-spaces
- 不允许出现连续多个空格,除非是换行
- @hw-stylistic/no-tabs
- 禁止使用tab作为缩进,推荐使用空格
- @hw-stylistic/object-property-newline
- 强制对象属性换行
- @hw-stylistic/one-var-declaration-per-line
- 变量声明时,要求一次仅声明一个变量
- @hw-stylistic/operator-linebreak
- 强制运算符位于代码行末
- @hw-stylistic/quotes
- 强制字符串使用单引号
- @hw-stylistic/semi-spacing
- 强制分号之前不加空格
- @hw-stylistic/space-before-blocks
- 强制在“{”之前加空格
- @hw-stylistic/space-before-function-paren
- 在函数名和“(”之间强制不加空格
- hw-stylistic/space-infix-ops
- 强制运算符前后都加空格
- @typescript-eslint/consistent-indexed-object-style
- 允许或禁止使用“Record”类型,仅适用于js/ts
- @typescript-eslint/consistent-type-definitions
- 强制使用一致的类型声明样式,仅使用“interface”或者仅使用“type”,仅适用于js/ts
- @typescript-eslint/consistent-type-imports
- 强制使用一致的类型导入风格,仅适用于js/ts
- @typescript-eslint/dot-notation
- 强制使用点表示法,仅适用于js/ts
- @typescript-eslint/explicit-function-return-type
- 函数和类方法需要显式的定义返回类型,仅适用于js/ts
- @typescript-eslint/explicit-module-boundary-types
- 导出到外部的函数和公共类方法,需要显式的定义返回类型和参数类型,仅适用于js/ts
- @typescript-eslint/method-signature-style
- 定义函数类型的属性时,强制使用特定的风格,仅适用于js/ts
- @typescript-eslint/no-dynamic-delete
- 不允许在computed key表达式上使用“delete”运算符,仅适用于js/ts
- @typescript-eslint/no-explicit-any
- 不允许使用“any”类型,仅适用于js/ts
- @typescript-eslint/no-for-in-array
- 禁止使用 for-in 循环来遍历数组元素,仅适用于js/ts
- @typescript-eslint/no-implicit-any-catch
- 禁止在 catch 表达式中使用隐式“any”类型,仅适用于js/ts
- @typescript-eslint/no-loop-func
- 禁止在循环语句内包含不安全引用的函数声明,仅适用于js/ts
- @typescript-eslint/no-namespace
- 禁止使用 TypeScript语法中的命名空间,仅适用于js/ts
- @typescript-eslint/no-parameter-properties
- 禁止在类构造函数中使用参数属性,仅适用于js/ts
- @typescript-eslint/no-this-alias
- 禁止将“this”赋值给一个变量,仅适用于js/ts
- @typescript-eslint/no-type-alias
- 禁止使用类型别名,仅适用于js/ts
- @typescript-eslint/no-unsafe-argument
- 不允许将any类型的值作为函数的参数传入,仅适用于js/ts
- @typescript-eslint/no-unsafe-assignment
- 禁止将“any”类型的值赋值给变量和属性,仅适用于js/ts
- @typescript-eslint/no-unsafe-call
- 禁止调用“any”类型的表达式,仅适用于js/ts
- @typescript-eslint/no-unsafe-member-access
- 禁止成员访问“any”类型的值,仅适用于js/ts
- @typescript-eslint/no-unsafe-return
- 函数禁止返回类型为“any”的值,仅适用于js/ts
- @typescript-eslint/no-use-before-define
- 禁止在变量声明之前使用变量,仅适用于js/ts
- @typescript-eslint/prefer-as-const
- 对于字面量类型,强制使用“as const”,仅适用于js/ts
- @typescript-eslint/prefer-literal-enum-member
- 要求所有枚举成员都定义为字面量值,仅适用于js/ts
- @typescript-eslint/prefer-ts-expect-error
- 强制使用“@ts-expect-error”而不是“@ts-ignore”,仅适用于js/ts
- @performance/hp-performance-no-dynamic-cls-func
- 避免动态声明function与class,仅适用于js/ts