Dart-Flutter:如何在Flutter小部件内使用三元运算符中的多个小部件



我想在这样的三元运算符中使用多个小部件。但这是错误的。我可以吗?

Container(
child: (if value != null)
? Widget1(...),Widget2(...)
    : const SizedBox.shrink(),
)

尝试将这些小部件中的每一个包装在Column()中(或包装到您认为适合应用程序的其他小部件中,作为Row(。

Container(
child: value != null
? Column(children:
[Widget1(...),
Widget2(...)]
)
    : const SizedBox.shrink(),
)

Container只支持一个子窗口小部件,因此不能以这种方式使用它。您可以使用类似ColumnRow:的东西

Container(
child: value != null
? Column(children: [Widget1(...), Widget2(...)])
   : const SizedBox.shrink(),
)

最新更新