flutter --flow-control-collections 是必需的,但它们是吗?
Posted
技术标签:
【中文标题】flutter --flow-control-collections 是必需的,但它们是吗?【英文标题】:flutter --flow-control-collections are needed, but are they? 【发布时间】:2020-04-14 22:13:36 【问题描述】:升级 Flutter(主版本和稳定版本)和 dart 后,我收到一个关于实验的错误 --flow-control-collections 没有为我在项目中使用的各种 for 循环启用。我尝试使用this entry 修复它,但这只会让事情变得更奇怪。所以,现在我有以下错误,告诉我需要启用控制流集合实验,同时告诉我不再需要它。
我使用的每个 for 循环都会出现此错误。
这是我的颤振 --version 结果:
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
Tools • Dart 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
Tools • Dart 2.8.0 (build 2.8.0-dev.0.0 886615d0f9)
任何想法如何解决这个问题?
【问题讨论】:
【参考方案1】:我的项目中也有这个问题,我按照以下步骤解决了我的问题:
-
SDK: ">=2.5.2 flutter clean
3.重启VSCode
【讨论】:
【参考方案2】:在 pubspec.yml 中更改 dart 版本
environment:
sdk: ">=2.6.0 <3.0.0"
然后
flutter pub get
flutter clean
然后重启 Android Studio
【讨论】:
【参考方案3】:即使更改 dart version
后不起作用,也只需重新启动您的 VS Code
或您正在使用的任何编辑器。然后检查错误是否存在。如果是,则运行flutter clean
。
【讨论】:
【参考方案4】:嘿,我今天早上遇到了同样的问题,但找到了解决方法。
1) 使用以下代码将 analysis_options.yaml 保存在您的根文件夹中:
analyzer:
enable-experiment:
- control-flow-collections
2) 不要在 for 循环之间使用方括号 例如:
<Widget>[
for (final category in categories)
CategoryWidget(category: category)
],
3) 重要的一步,这可能是它不适合您的原因: 将根文件夹中 pubspec.yml 文件中的 Dart 版本约束更改为 2.5.2
environment:
sdk: ">=2.5.2 <3.0.0"
【讨论】:
标志control-flow-collections
不再需要
2.2.2 作为最低版本,发布获取,删除 if() 的括号并重新启动 androidStudio 对我来说已经足够了。以上是关于flutter --flow-control-collections 是必需的,但它们是吗?的主要内容,如果未能解决你的问题,请参考以下文章
[Flutter] flutter项目一直卡在 Running Gradle task 'assembleDebug'...
flutter 日志输出,Flutter打印日志,flutter log,flutter 真机日志
Flutter开发 Flutter 包和插件 ( Flutter 包和插件简介 | 创建 Flutter 插件 | 创建 Dart 包 )
如何解决flutter gradle build error?C:\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 991