目录

prefer_final_parameters

Prefer final for parameter declarations if they are not reassigned.

此规则自 Dart 2.14 版本起可用。

此规则提供 快速修复

_不兼容规则:unnecessary_final , avoid_final_parameters _

详情

#

DO prefer declaring parameters as final if they are not reassigned in the function body.

Declaring parameters as final when possible is a good practice because it helps avoid accidental reassignments.

BAD:

dart
void badParameter(String label) { // LINT
  print(label);
}

GOOD:

dart
void goodParameter(final String label) { // OK
  print(label);
}

BAD:

dart
void badExpression(int value) => print(value); // LINT

GOOD:

dart
void goodExpression(final int value) => print(value); // OK

BAD:

dart
[1, 4, 6, 8].forEach((value) => print(value + 2)); // LINT

GOOD:

dart
[1, 4, 6, 8].forEach((final value) => print(value + 2)); // OK

GOOD:

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