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
文件中的 linter > rules 下添加 prefer_final_parameters
analysis_options.yaml
yaml
linter:
rules:
- prefer_final_parameters
除非另有说明,否则本网站上的文档反映的是 Dart 3.6.0。页面上次更新时间为 2024-07-03。 查看源代码 或报告问题。