在三元操作中检查null

时间:2018-04-11 12:32:03

标签: dart flutter

如果_contact不为null,我想在文本字段上放置一个默认值。要做到这一点

new TextField(
    decoration: new InputDecoration(labelText: "Email"), 
    maxLines: 1,
    controller: new TextEditingController(text: (_contact != null) ? _contact.email: ""))

有没有更好的方法呢?例如:Javascript类似于:text: _contact ? _contact.email : ""

1 个答案:

答案 0 :(得分:17)

Dart附带?.??运算符进行空检查。

您可以执行以下操作:

var result = _contact?.email ?? ""

您也可以

if (t?.creationDate?.millisecond != null) {
   ...
}

JS中的等同于:

if (t && t.creationDate && t.creationDate.millisecond) {
   ...
}