跳到主要内容

invalid_literal_annotation

只有 const 构造函数才能带有 @literal 注解。

描述

#

literal 注解应用于除 const 构造函数以外的任何事物时,分析器会生成此诊断信息。

示例

#

以下代码会产生此诊断信息,因为该构造函数不是 const 构造函数

dart
import 'package:meta/meta.dart';

class C {
  @literal
  C();
}

以下代码会产生此诊断信息,因为 x 不是一个构造函数

dart
import 'package:meta/meta.dart';

@literal
var x;

常见修复方法

#

如果该注解位于构造函数上,并且该构造函数应尽可能始终使用 const 调用,则用 const 关键字标记该构造函数

dart
import 'package:meta/meta.dart';

class C {
  @literal
  const C();
}

如果构造函数不能被标记为 const,则删除该注解。

如果该注解位于除构造函数以外的任何事物上,则删除该注解

dart
var x;