sdk_version_ui_as_code
for、if、およびスプレッド要素はバージョン2.3.0までサポートされていませんでしたが、このコードは以前のバージョンで実行できるようにする必要があります。
説明
#アナライザーは、SDK制約の下限が2.3.0未満であるコードでfor、if、またはスプレッド要素が見つかった場合に、この診断を生成します。for、if、またはスプレッド要素の使用は以前のバージョンではサポートされていなかったため、このコードはSDKの以前のバージョンでは実行できません。
例
#以下は、SDK制約の下限が2.3.0未満で定義されているpubspecの例です。
yaml
environment:
sdk: '>=2.2.0 <2.4.0'その`pubspec.yaml`を持つパッケージでは、次のようなコードがこの診断を生成します。
dart
var digits = [for (int i = 0; i < 10; i++) i];一般的な修正
#古いバージョンのSDKをサポートする必要がない場合は、SDK制約を増やして構文を使用できるようにすることができます。
yaml
environment:
sdk: '>=2.3.0 <2.4.0'SDKの古いバージョンをサポートする必要がある場合は、これらの要素を使用しないようにコードを書き換えてください。
dart
var digits = _initializeDigits();
List<int> _initializeDigits() {
var digits = <int>[];
for (int i = 0; i < 10; i++) {
digits.add(i);
}
return digits;
}