parameter_assignments
不要重新賦值函式或方法的引數引用。
詳情
#不要為方法或函式的引數賦新值。
給引數賦新值通常不是好的做法,除非使用 ??= 等運算子。否則,隨意重新賦值引數通常是個錯誤。
不好
dart
void badFunction(int parameter) { // LINT
parameter = 4;
}不好
dart
void badFunction(int required, {int optional: 42}) { // LINT
optional ??= 8;
}不好
dart
void badFunctionPositional(int required, [int optional = 42]) { // LINT
optional ??= 8;
}不好
dart
class A {
void badMethod(int parameter) { // LINT
parameter = 4;
}
}好
dart
void ok(String parameter) {
print(parameter);
}好
dart
void actuallyGood(int required, {int optional}) { // OK
optional ??= ...;
}好
dart
void actuallyGoodPositional(int required, [int optional]) { // OK
optional ??= ...;
}好
dart
class A {
void ok(String parameter) {
print(parameter);
}
}啟用
#要啟用 parameter_assignments 規則,請在您的 analysis_options.yaml 檔案的 linter > rules 下新增 parameter_assignments
analysis_options.yaml
yaml
linter:
rules:
- parameter_assignments如果您使用 YAML 對映語法來配置 linter 規則,請在 linter > rules 下新增 parameter_assignments: true
analysis_options.yaml
yaml
linter:
rules:
parameter_assignments: true