sdk_version_set_literal
Set 字面量直到版本 2.2 才支持,但此代码需要能够在更早的版本上运行。
描述
#当在 SDK 约束的下限小于 2.2.0 的代码中找到 Set 字面量时,分析器会产生此诊断。Set 字面量在早期版本中不受支持,因此此代码将无法在早期版本的 SDK 上运行。
示例
#以下是一个 pubspec 文件示例,其中定义了 SDK 约束,且其下限小于 2.2.0
yaml
environment:
sdk: '>=2.1.0 <2.4.0'
在该 pubspec 文件所在的包中,以下代码会产生此诊断:
dart
var s = <int>{};
常见修复方法
#如果您不需要支持早期版本的 SDK,则可以提高 SDK 约束以允许使用此语法。
yaml
environment:
sdk: '>=2.2.0 <2.4.0'
如果您确实需要支持早期版本的 SDK,则将 Set 字面量替换为创建 Set 的代码,但不要使用字面量形式。
dart
var s = new Set<int>();