Flutter 如何省略第二个条件

Flutter 如何省略第二个条件,flutter,dart,Flutter,Dart,如何在条件语句中省略第二个条件 return Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ message != null ? Padding( padding: const EdgeInsets.all(24.0), child: Text(mess

如何在条件语句中省略第二个条件

    return Column(
      mainAxisAlignment: MainAxisAlignment.center,
      children: <Widget>[
        message != null
            ? Padding(
                padding: const EdgeInsets.all(24.0),
                child: Text(message),
              )
            : null, // how to omit second condition?
      ],
    );
返回列(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
消息!=null
?填充物(
填充:常数边集全部(24.0),
子:文本(消息),
)
:null,//如何省略第二个条件?
],
);
当第二个条件为空时,我得到

════════ widgets库捕获到异常════════ 生成ExportData时引发了以下断言(脏,状态: _ExportDataState(e723d):列的子项不能包含任何空值,但在索引4处找到了空值


在这种情况下,我通常会返回一个Container()


return Column(
      mainAxisAlignment: MainAxisAlignment.center,
      children: <Widget>[
        message != null
            ? Padding(
                padding: const EdgeInsets.all(24.0),
                child: Text(message),
              )
            : Container(), // how to omit second condition?
      ],
    );


返回列(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
消息!=null
?填充物(
填充:常数边集全部(24.0),
子:文本(消息),
)
:Container(),//如何省略第二个条件?
],
);

我更喜欢
SizedBox
而不是
容器

return Column(
  mainAxisAlignment: MainAxisAlignment.center,
  children: <Widget>[
    message != null
        ? Padding(
            padding: const EdgeInsets.all(24.0),
            child: Text(message),
          )
        : SizedBox(),
  ],
);
返回列(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
消息!=null
?填充物(
填充:常数边集全部(24.0),
子:文本(消息),
)
:SizedBox(),
],
);

子项:[如果(message!=null)填充(…),…]
@pskink您认为它在语法上有效吗think@bereal请参阅并键入
^F promoActive
@bereal hasty?多匆忙啊?你只是好奇。。。顺便说一句,你也可以使用
进行
循环…只是好奇-使用sizedbox比使用容器有什么好处?请参阅此链接bro@Mahori倾向于同意此选项,我们也可以将const与sizedbox一起使用。@VinothVino感谢您的链接。我将开始使用一个大小的框作为占位符!很好,使用SizedBox时+1:)