dart中的“常量创建的参数必须是常量表达式”是什么?

DNB*_*ims 2 dart flutter

我不知道为什么dart编译器在代码中向我显示错误。这到底是什么意思?谢谢。

资源:

          const SliverAppBar(
        pinned: true,
        expandedHeight: 300.0, // TODO: check out later
        flexibleSpace: FlexibleSpaceBar(
            title: new Column(
              mainAxisAlignment: MainAxisAlignment.end,
              children: <Widget>[
                Text('_SliverAppBar'),
                Text('subtitle'),
              ],
            ),
            background: Column(
              mainAxisAlignment: MainAxisAlignment.center,
              children: <Widget>[
                Text('Info'),
              ],
            )),
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

Ian*_*Ian 5

我评论了导致该问题的原始答案。但这是为什么:

正如@aziza指出的那样,您已SliverAppBar使用const关键字实例化了您的代码。因此,应使用实例化所有属性const

在您的情况下,只需将from更改为new Column即可const Column解决问题,但是dart 2可以推断出它将如何实例化该类。只需省略newconst关键字,然后让dart完成即可。