【问题标题】:What is the `Arguments of a constant creation must be constant expressions` in dart?Dart中的“常量创建的参数必须是常量表达式”是什么?
【发布时间】:2018-04-20 14:36:16
【问题描述】:

我不知道为什么 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'),
              ],
            )),

【问题讨论】:

  • 您已将 SliverAppBar 声明为常量

标签: dart flutter


【解决方案1】:

我已经评论了导致该问题的原始答案。但原因如下:

正如@aziza 所指出的,您已经使用const 关键字实例化了您的SliverAppBar。因此,所有属性都应使用const 进行实例化。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-24
    • 2013-02-09
    • 1970-01-01
    • 2014-11-13
    • 1970-01-01
    • 2021-03-08
    相关资源
    最近更新 更多