This is great article and conversation. I tried to use the ternary operator as described. But the code didn't work resulting in an error as mentioned.
Column(children: [ condition? Text("True"): null,],);
The ternary example above is miss leading. Dart will respond with an error that a null was returned instead of widget. You can't return null. The correct way will be to return a widget:
Column(children: [ condition? Text("True"): Text("false"),],);
In order for the ternary to work you need to return a Widget. If you don't want to return anything you can return a empty container.
Column(children: [ condition? Text("True"): Container(),],);
Good luck.