跳到主要內容

use_late_for_private_fields_and_variables

對非空型別的私有成員使用 'late'。

描述

#

當私有欄位或變數被標記為可空,但所有引用都假設該變數永不為 null 時,分析器會產生此診斷。

示例

#

以下程式碼會產生此診斷,因為私有頂級變數 _i 是可空的,但所有引用都假設它不會是 null

dart
void f() {
  _i!.abs();
}

int? _i;

常見修復

#

將變數或欄位標記為非空且使用 late,表示它將始終被賦值為一個非空值。

dart
void f() {
  _i.abs();
}

late int _i;