parameter_assignments
Don't reassign references to parameters of functions or methods.
此规则自 Dart 2.0 版本起可用。
详情
#DON'T assign new values to parameters of methods or functions.
Assigning new values to parameters is generally a bad practice unless an operator such as ??=
is used. Otherwise, arbitrarily reassigning parameters is usually a mistake.
BAD:
dart
void badFunction(int parameter) { // LINT
parameter = 4;
}
BAD:
dart
void badFunction(int required, {int optional: 42}) { // LINT
optional ??= 8;
}
BAD:
dart
void badFunctionPositional(int required, [int optional = 42]) { // LINT
optional ??= 8;
}
BAD:
dart
class A {
void badMethod(int parameter) { // LINT
parameter = 4;
}
}
GOOD:
dart
void ok(String parameter) {
print(parameter);
}
GOOD:
dart
void actuallyGood(int required, {int optional}) { // OK
optional ??= ...;
}
GOOD:
dart
void actuallyGoodPositional(int required, [int optional]) { // OK
optional ??= ...;
}
GOOD:
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
除非另有说明,否则本网站上的文档反映的是 Dart 3.6.0。页面最后更新于 2025-02-05。 查看源代码 或 报告问题.