跳到主要内容

常量模式中的类型字面量

请使用 'TypeName _' 而非类型字面量。

描述

#

当类型字面量出现在模式中时,分析器会产生此诊断信息。

示例

#

以下代码会产生此诊断信息,因为其中使用了类型字面量作为常量模式

dart
void f(Object? x) {
  if (x case num) {
    // ...
  }
}

常见修复方法

#

如果类型字面量旨在匹配给定类型的对象,请使用变量模式

dart
void f(Object? x) {
  if (x case num _) {
    // ...
  }
}

或对象模式

dart
void f(Object? x) {
  if (x case num()) {
    // ...
  }
}

如果类型字面量旨在匹配类型字面量本身,请将其写成常量模式

dart
void f(Object? x) {
  if (x case const (num)) {
    // ...
  }
}