跳到主要內容

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 檔案中將 unnecessary_final 新增到 linter > rules 下方

analysis_options.yaml
yaml
linter:
  rules:
    - unnecessary_final

如果你使用 YAML map 語法配置 linter 規則,請在 linter > rules 下方新增 unnecessary_final: true

analysis_options.yaml
yaml
linter:
  rules:
    unnecessary_final: true