noUselessThisAlias
Diagnostic Category: lint/complexity/noUselessThisAlias
Since: v1.0.0
Sources:
- Inspired from:
@typescript-eslint/no-this-alias
Disallow useless this
aliasing.
Arrow functions inherits this
from their enclosing scope;
this makes this
aliasing useless in this situation.
Examples
Section titled ExamplesInvalid
Section titled Invalidcode-block.js:3:15 lint/complexity/noUselessThisAlias FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✖ This aliasing of this is unnecessary.
1 │ class A {
2 │ method() {
> 3 │ const self = this;
│ ^^^^^^^^^^^
4 │ return () => {
5 │ return self;
ℹ Arrow functions inherits this
from their enclosing scope.
ℹ Safe fix: Use this instead of an alias.
1 1 │ class A {
2 2 │ method() {
3 │ - ········const·self·=·this;
4 3 │ return () => {
5 │ - ············return·self;
4 │ + ············return·this;
6 5 │ }
7 6 │ }