no_self_assignments
請勿將變數指派給自己。
詳細資訊
#請勿將變數指派給自己。這通常是錯誤。
不良範例
dart
class C {
int x;
C(int x) {
x = x;
}
}
良好範例
dart
class C {
int x;
C(int x) : x = x;
}
良好範例
dart
class C {
int x;
C(int x) {
this.x = x;
}
}
不良範例
dart
class C {
int _x = 5;
int get x => _x;
set x(int x) {
_x = x;
_customUpdateLogic();
}
void _customUpdateLogic() {
print('updated');
}
void example() {
x = x;
}
}
良好範例
dart
class C {
int _x = 5;
int get x => _x;
set x(int x) {
_x = x;
_customUpdateLogic();
}
void _customUpdateLogic() {
print('updated');
}
void example() {
_customUpdateLogic();
}
}
不良範例
dart
class C {
int x = 5;
void update(C other) {
this.x = this.x;
}
}
良好範例
dart
class C {
int x = 5;
void update(C other) {
this.x = other.x;
}
}
啟用
#若要啟用 no_self_assignments
規則,請在您的 analysis_options.yaml
檔案中,於 linter > rules 下方新增 no_self_assignments
analysis_options.yaml
yaml
linter:
rules:
- no_self_assignments
如果您改用 YAML map 語法來設定 linter 規則,請在 linter > rules 下方新增 no_self_assignments: true
analysis_options.yaml
yaml
linter:
rules:
no_self_assignments: true
除非另有說明,否則本網站的文件反映的是 Dart 3.7.1 版本。頁面上次更新日期為 2025-03-07。 檢視原始碼 或 回報問題。