-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Open
Labels
accepting prsGo ahead, send a pull request that resolves this issueGo ahead, send a pull request that resolves this issueenhancement: new plugin ruleNew rule request for eslint-pluginNew rule request for eslint-pluginpackage: eslint-pluginIssues related to @typescript-eslint/eslint-pluginIssues related to @typescript-eslint/eslint-plugin
Description
Do not allow number literals to be used instead of enums. I could think of three places that this can happen:
- Function arguments
- Binary expressions
- Assignment expressions
enum Foo {
ONE,
TWO
}
function getFoo(f: Foo) {
if (f === Foo.ONE) { // Good
}
if (f === 1) { // Bad
}
let ff: Foo;
ff = Foo.TWO // Good
ff = 1 // Bad
}
getFoo(Foo.ONE) // Good
getFoo(1) // Bad
Rule name
I need help with naming it according to conventions
Options
I don't think this rule needs any options. I don't see why anyone wants to use number literals for enums.
j-f1, sindresorhus, qm3ster, Voronar, hariseldon78 and 13 more
Metadata
Metadata
Assignees
Labels
accepting prsGo ahead, send a pull request that resolves this issueGo ahead, send a pull request that resolves this issueenhancement: new plugin ruleNew rule request for eslint-pluginNew rule request for eslint-pluginpackage: eslint-pluginIssues related to @typescript-eslint/eslint-pluginIssues related to @typescript-eslint/eslint-plugin