avoid_setters_without_getters
避免使用没有 getter 的 setter。
详情
#不要定义一个没有对应 getter 的 setter。
定义一个 setter 而不定义相应的 getter 可能会导致逻辑不一致。这样做可能允许你将属性设置为某个值,但是当观察属性的值时,它很容易变得不同。
不良
dart
class Bad {
int l, r;
set length(int newLength) {
r = l + newLength;
}
}
良好
dart
class Good {
int l, r;
int get length => r - l;
set length(int newLength) {
r = l + newLength;
}
}
启用
#要启用 avoid_setters_without_getters
规则,请在你的 analysis_options.yaml
文件中的 linter > rules 下添加 avoid_setters_without_getters
analysis_options.yaml
yaml
linter:
rules:
- avoid_setters_without_getters
如果你改为使用 YAML 映射语法来配置 linter 规则,请在 linter > rules 下添加 avoid_setters_without_getters: true
analysis_options.yaml
yaml
linter:
rules:
avoid_setters_without_getters: true
除非另有说明,否则本网站上的文档反映了 Dart 3.7.1 版本。页面上次更新于 2025-03-07。 查看源代码 或 报告问题。