getter-return
Требовать операторы return в геттерах
Использование конфигурации recommended из @eslint/js в файле конфигурации включает это правило
Синтаксис get связывает свойство объекта с функцией, которая будет вызвана при обращении к этому свойству. Впервые он был представлен в ECMAScript 5:
const p = {
get name(){
return "nicholas";
}
};
Object.defineProperty(p, "age", {
get: function (){
return 17;
}
});
Обратите внимание, что каждый getter должен возвращать значение.
Подробности правила
Это правило требует наличия оператора return в геттерах свойств.
Примеры неправильного кода для этого правила:
/*eslint getter-return: "error"*/
const p = {
(){
// no returns.
}
};
Object.defineProperty(p, "age", {
(){
// no returns.
}
});
class P{
(){
// no returns.
}
}
Примеры правильного кода для этого правила:
/*eslint getter-return: "error"*/
const p = {
get name(){
return "nicholas";
}
};
Object.defineProperty(p, "age", {
get: function (){
return 18;
}
});
class P{
get name(){
return "nicholas";
}
}
Параметры
У этого правила есть параметр-объект:
-
"allowImplicit": false(по умолчанию) запрещает неявный возвратundefinedс помощью оператораreturn.
Примеры правильного кода для параметра { "allowImplicit": true }:
/*eslint getter-return: ["error", { allowImplicit: true }]*/
const p = {
get name(){
return; // return undefined implicitly.
}
};
Когда не следует использовать это правило
Если в вашем проекте не используются геттеры свойств ES5, это правило не требуется.
Обрабатывается TypeScript
Это правило можно безопасно отключить при использовании TypeScript, поскольку компилятор TypeScript выполняет эту проверку.
Версия
Это правило появилось в ESLint v4.2.0.
Дополнительная литература
Ресурсы
© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/rules/getter-return