мерехтіння - потрібні потоки-контроль-колекції, але чи є вони?


14

Після оновлення флеттера (як майстерної, так і стабільної версії) та dart, я отримую помилку щодо експерименту - не ввімкнено колекціїflow-control для різних for-циклів, які я використовую в проекті. Я спробував виправити це за допомогою цього запису, але це просто зробило речі більш дивними. Отже, зараз у мене є нижченаведена помилка, яка говорить про те, що мені потрібно включити досвід колекцій контрольних потоків, одночасно кажучи мені, що це більше не потрібно.

 eex

Ця помилка з'являється для кожного for-циклу, який я використовую.

Ось мій трепет --верта

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)

Будь-які ідеї, як це вирішити?

Відповіді:


40

Гей, у мене була така ж проблема сьогодні вранці, але я знайшов виправлення.

1) Зберігайте analy_options.yaml у вашій кореневій папці з цим кодом:

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

2) Не використовуйте дужки {} між вашими для циклів. Наприклад:

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

3) Важливий крок, який, мабуть, тому не працює для вас: Змініть обмеження версії Dart у файлі pubspec.yml у вашій кореневій папці на 2.5.2

environment:
  sdk: ">=2.5.2 <3.0.0"

16
номер 3 зробив трюк
Ali80

Прапор control-flow-collectionsбільше не потрібно
jibiel


5

Навіть після зміни dart versionне працює, просто перезапустіть VS Codeредактор або будь-який редактор, який ви використовуєте. Потім перевірте, чи є помилка. Якщо так, то запустіть flutter clean.


3

Змініть версію дротика в pubspec.yml

environment:
  sdk: ">=2.6.0 <3.0.0"

тоді

 flutter pub get
 flutter clean

І перезапустіть Android Studio


2

pubspec.yamlДля мене було достатньо просто оновити мінімальну версію Dart :

environment:
  sdk: ">=2.7.0 <3.0.0"
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.