prefer_final_parameters
如果参数在函数体中没有重新赋值,则首选使用 final 声明参数。
此规则从 Dart 2.14 开始可用。
此规则有一个 快速修复 可用。
不兼容规则: unnecessary_final, avoid_final_parameters
详情
#**应该** 首选将参数声明为 final,如果它们在函数体中没有重新赋值。
尽可能地将参数声明为 final 是一种良好的实践,因为它有助于避免意外重新赋值。
错误
dart
void badParameter(String label) { // LINT
print(label);
}
正确
dart
void goodParameter(final String label) { // OK
print(label);
}
错误
dart
void badExpression(int value) => print(value); // LINT
正确
dart
void goodExpression(final int value) => print(value); // OK
错误
dart
[1, 4, 6, 8].forEach((value) => print(value + 2)); // LINT
正确
dart
[1, 4, 6, 8].forEach((final value) => print(value + 2)); // OK
正确
dart
void mutableParameter(String label) { // OK
print(label);
label = 'Hello Linter!';
print(label);
}
用法
#要启用 prefer_final_parameters
规则,请在你的 analysis_options.yaml
文件中将 prefer_final_parameters
添加到 **linter > rules** 下
analysis_options.yaml
yaml
linter:
rules:
- prefer_final_parameters
除非另有说明,否则本网站上的文档反映了 Dart 3.5.3。页面最后更新于 2024-07-03。 查看源代码 或 报告问题.