eslint/accessor-pairs Pedantic
作用
强制在对象和类中使用 getter/setter 成对出现。
为什么不好?
在 JavaScript 中,创建一个只有 setter 而没有对应 getter 的对象是一个常见错误。 如果没有 getter,你就无法读取该属性,因此它最终不会被使用。
示例
此规则不正确的代码示例:
js
var o = {
set a(value) {
this.val = value;
},
};
class C {
set a(value) {
this.val = value;
}
}此规则正确的代码示例:
js
var o = {
set a(value) {
this.val = value;
},
get a() {
return this.val;
},
};
class C {
set a(value) {
this.val = value;
}
get a() {
return this.val;
}
}配置
此规则接受一个具有以下属性的配置对象:
enforceForClassMembers
type: boolean
default: true
对类成员强制此规则。
enforceForTSTypes
type: boolean
default: false
对 TypeScript 接口和类型强制此规则。
getWithoutSet
type: boolean
default: false
报告没有 setter 的 getter。
setWithoutGet
type: boolean
default: true
报告没有 getter 的 setter。
如何使用
To enable this rule using the config file or in the CLI, you can use:
json
{
"rules": {
"accessor-pairs": "error"
}
}ts
import { defineConfig } from "oxlint";
export default defineConfig({
rules: {
"accessor-pairs": "error",
},
});bash
oxlint --deny accessor-pairs版本
此规则在 v1.33.0 中添加。
