Dart 2.3 for,if和传播有关版本的支持警告消息

时间:2019-05-12 08:33:29

标签: dart flutter

我收到警告消息“ 直到2.2.2版才支持for,if和spread元素,但是需要此代码才能在较早版本上运行”,但该代码

Column(   crossAxisAlignment: CrossAxisAlignment.start,
            children: <Widget>[
              if (document['propertyid'] == '1') Text('jjj'),
              GestureDetector(
                onTap: () {
                  Navigator.push(
                      context,
                      MaterialPageRoute(
                          builder: (context) =>
                              PropertyDetails(document['propertyid'])));
                },
                child: Text(document['propertyname'],
                    style: TextStyle(
                        color: Colors.blue,
                        fontStyle: FontStyle.italic,
                        fontWeight: FontWeight
                            .w500) //Theme.of(context).textTheme.title,
                    ),
              ),
            ],
  ),

按预期工作。 minSDKVersion等为28。为什么它认为我希望能够在任何早期版本上运行此代码?我需要更改为更高版本吗?

3 个答案:

答案 0 :(得分:9)

pubspec.yaml中,您可以更新环境sdk来消除这些警告:

environment:
  sdk: ">=2.3.0 <3.0.0"

答案 1 :(得分:2)

在警告上按option + return并选择Update the SDK constraints

enter image description here

答案 2 :(得分:-2)

将SDK更改为">=2.3.0 <3.0.0"会导致另一个问题。

enter image description here

然而">=2.2.2 <3.0.0"就像一个吊饰!