Expected 'this' to be used by class async method 'delete'
26
27 async update(){}
28
29 async delete(){} 30}
31
32class ClientRepository extends Repository {
Expected 'this' to be used by class async method 'update'
24
25 async findOne(){}
26
27 async update(){} 28
29 async delete(){}
30}
Expected 'this' to be used by class async method 'findOne'
22
23 async findMany(){}
24
25 async findOne(){} 26
27 async update(){}
28
Expected 'this' to be used by class async method 'findMany'
20
21 async create(data){}
22
23 async findMany(){} 24
25 async findOne(){}
26
Expected 'this' to be used by class async method 'create'
18 console.log(`hello from ${Object.getPrototypeOf(this).constructor.name}`);
19 }
20
21 async create(data){} 22
23 async findMany(){}
24
Expected 'this' to be used by class async method 'delete'
13
14 async update() {}
15
16 async delete() {}17}
Expected 'this' to be used by class async method 'update'
11
12 async findByID() {}
13
14 async update() {}15
16 async delete() {}
17}
Expected 'this' to be used by class async method 'findByID'
9
10 async findMany() {}
11
12 async findByID() {}13
14 async update() {}
15
Expected 'this' to be used by class async method 'findMany'
7
8 async create() {}
9
10 async findMany() {}11
12 async findByID() {}
13
Expected 'this' to be used by class async method 'create'
5 }
6 }
7
8 async create() {} 9
10 async findMany() {}
11
Description
If a class method does not use this
, it can sometimes be made into a static function. If you do convert the method into a static function, instances of the class that call that particular method have to be converted to a static call as well (MyClass.callStaticMethod())
Bad Practice
class Person {
sayHi() {
const greeting = document.createElement("div");
greeting.innerText = "Hello!";
document.appendChild();
}
}
const person = new Person();
person.sayHi();
Recommended
class Person {
static sayHi() {
const greeting = document.createElement("div");
greeting.innerText = "Hello!";
document.appendChild();
}
}
Person.sayHi();