使用spread(...)元素会产生以下错误:
”直到版本2.2.2才支持for,if和spread元素,但是此代码是必需的,以便能够在早期版本上运行。 尝试更新SDK约束。”
将pubspec.yaml更改为:
environment:
sdk: ">=2.x <3.0.0"
对于从2.2到5.0的x值,不能消除该错误。 Autofix会将其设置为“> = 2.2.2 <3.0.0”。
代码运行良好,这很烦人,因为使用的每个文件都有一个错误实例,这会导致“问题”窗口充满无意义的消息。是否有可能某些东西需要较低版本的sdk,如果有,它可能在什么地方?
Flutter 1.9.1 + hotfix.6•通道稳定•https://github.com/flutter/flutter.git
框架•修订版68587a0916(6周前)•2019-09-13 19:46:58 -0700
引擎•修订版b863200c37
工具•Dart 2.5.0
Flutter(频道稳定,v1.9.1 + hotfix.6,在Microsoft Windows [Version 10.0.18362.295],语言环境为en-GB)
Android工具链-为Android设备开发(Android SDK版本29.0.1)
Android Studio(版本3.4)
答案 0 :(得分:0)
尝试通过这种方式进行设置:
environment:
sdk: ">=2.5.0 <3.0.0"
我在我的项目中有这个并且工作正常!
答案 1 :(得分:0)
设置sdk:“> = 2.5.0 <3.0.0” 并重新启动VSC解决了该问题(以及现在能够找到它已安装但坚持认为不存在的软件包)。我在这个游戏中玩的时间已经足够长了,我应该知道关闭然后重新打开可以解决99.9%的问题#facepalm
答案 2 :(得分:0)
在 pubspec.yaml 中,您可以更新环境SDK 以消除这些警告:
environment:
sdk: ">=2.3.0 <3.0.0"
享受代码:)