prefer_final_parameters
如果引數宣告未被重新賦值,則優先使用 final。
詳情
#應優先將未在函式體中重新賦值的引數宣告為 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 規則與以下規則不相容
啟用
#要啟用 prefer_final_parameters 規則,請在您的 analysis_options.yaml 檔案中的 linter > rules 下新增 prefer_final_parameters
analysis_options.yaml
yaml
linter:
rules:
- prefer_final_parameters如果您改用 YAML 對映語法配置 Linter 規則,請在 linter > rules 下新增 prefer_final_parameters: true
analysis_options.yaml
yaml
linter:
rules:
prefer_final_parameters: true