flutter --flow-control-collections gerekli, ama değil mi?


14

Çarpıntı (hem ana hem de kararlı sürümler) ve dart'ı yükselttikten sonra, projede kullandığım çeşitli döngüler için etkinleştirilmeyen deneme - akış-kontrol-koleksiyonları hakkında bir hata alıyorum. Bu girişi kullanarak düzeltmeye çalıştım ama bu sadece garip şeyler yaptı. Yani, şimdi bana artık gerekli olmadığını söylerken aynı anda kontrol-akış-koleksiyonları deneyim etkinleştirilmesi gerektiğini söyleyen aşağıdaki hata var.

 EEx

Bu hata kullandığım her for-loop için geliyor.

İşte benim çarpıntı - sürüm

Stable:
Flutter 1.12.13+hotfix.5 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 27321ebbad (13 days ago)2019-12-10 18:15:01 -0800
Engine • revision 2994f7e1e6
ToolsDart 2.7.0

Master:
Flutter 1.13.6-pre.16 • channel master • https://github.com/flutter/flutter.git
Framework • revision fcaf9c4070 (2 days ago)2019-12-21 14:03:01 -0800
Engine • revision 33813929e3
ToolsDart 2.8.0 (build 2.8.0-dev.0.0 886615d0f9)

Bunu nasıl çözeceğiniz hakkında bir fikriniz var mı?

Yanıtlar:


40

Hey, bu sabah aynı sorunu yaşadım ama bir düzeltme buldum.

1) analy_options.yaml dosyasını şu kodla kök klasörünüzde tutun:

analyzer:
  enable-experiment:
    - control-flow-collections

2) Döngüler arasında {} köşeli ayraç kullanmayın Örn:

<Widget>[
  for (final category in categories) 
    CategoryWidget(category: category)
],

3) Önemli bir adımdır, bu muhtemelen sizin için çalışmıyor: Kök klasörünüzdeki pubspec.yml dosyasındaki Dart sürüm kısıtlamanızı 2.5.2 olarak değiştirin

environment:
  sdk: ">=2.5.2 <3.0.0"

16
3 numara hile yaptı
Ali80

Bayrak control-flow-collectionsartık gerekli değil
jibiel


5

dart versionÇalışmayanı değiştirdikten sonra bile , sadece VS Codeveya kullandığınız herhangi bir düzenleyiciyi yeniden başlatın . Ardından hatanın orada olup olmadığını kontrol edin. Eğer öyleyse, çalıştırın flutter clean.


3

Pubspec.yml dosyasında dart sürümünü değiştirme

environment:
  sdk: ">=2.6.0 <3.0.0"

sonra

 flutter pub get
 flutter clean

Ve Android Studio'yu yeniden başlatın


2

Sadece minimum Dart sürümünü güncellemek pubspec.yamlbenim için yeterliydi:

environment:
  sdk: ">=2.7.0 <3.0.0"
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.