typescript/prefer-literal-enum-member Restriction
它的作用
显式的枚举值必须只使用字面量值(字符串、数字、布尔值等)。
为什么这不好?
TypeScript 允许枚举成员的值是许多不同类型的有效 JavaScript 表达式。 然而,由于枚举会创建自己的作用域,其中每个枚举成员都会成为该作用域中的一个变量,开发者往往会对最终得到的值感到惊讶。
示例
以下是此规则的错误代码示例:
ts
const imOutside = 2;
const b = 2;
enum Foo {
outer = imOutside,
a = 1,
b = a,
c = b,
}配置
此规则接受一个包含以下属性的配置对象:
allowBitwiseExpressions
type: boolean
default: false
当设置为 true 时,允许在枚举成员初始化器中使用位运算表达式。 这包括按位非 (~)、与 (&)、或 (|)、异或 (^) 以及移位运算符 (<<、>>、>>>)。
如何使用
To enable this rule using the config file or in the CLI, you can use:
json
{
"rules": {
"typescript/prefer-literal-enum-member": "error"
}
}ts
import { defineConfig } from "oxlint";
export default defineConfig({
rules: {
"typescript/prefer-literal-enum-member": "error",
},
});bash
oxlint --deny typescript/prefer-literal-enum-member版本
此规则在 v0.3.2 中添加。
