positional_field_in_object_pattern
物件模式只能使用命名欄位。
描述
#當物件模式包含一個未指定 getter 名稱的欄位時,分析器會生成此診斷。物件模式欄位與物件 getter 返回的值進行匹配。如果未指定 getter 名稱,模式欄位將無法訪問值以嘗試匹配。
示例
#以下程式碼會生成此診斷,因為物件模式 String(1) 未指定要訪問 String 的哪個 getter 並與值 1 進行比較
dart
void f(Object o) {
if (o case String(1)) {}
}常見修復
#新增 getter 名稱以訪問值,後跟冒號,再跟要匹配的模式
dart
void f(Object o) {
if (o case String(length: 1)) {}
}