跳到主要内容

unnecessary_final

稳定
修复可用

本地变量请勿使用 final

详情

#

声明本地变量时,请使用 var,而不是 final

根据 Effective Dart,广泛使用两种风格。此规则强制执行 var 风格。对于偏好 final 的另一种风格,请启用 prefer_final_localsprefer_final_in_for_each

对于字段,始终建议使用 final;请参阅规则 prefer_final_fields

错误示例

dart
void badMethod() {
  final label = 'Final or var?';
  for (final char in ['v', 'a', 'r']) {
    print(char);
  }
}

正确示例

dart
void goodMethod() {
  var label = 'Final or var?';
  for (var char in ['v', 'a', 'r']) {
    print(char);
  }
}

不兼容的规则

#

unnecessary_final 规则与以下规则不兼容

启用

#

要启用 unnecessary_final 规则,请在您的 analysis_options.yaml 文件中的 linter > rules 下添加 unnecessary_final

analysis_options.yaml
yaml
linter:
  rules:
    - unnecessary_final

如果您改为使用 YAML 映射语法来配置 linter 规则,请在 linter > rules 下添加 unnecessary_final: true

analysis_options.yaml
yaml
linter:
  rules:
    unnecessary_final: true