1

我对 Dart 空值安全有疑问。

即使我明确检查空值,它仍然会抱怨在此处输入图像描述

感叹号正在解决这个问题

在此处输入图像描述

但它非常丑陋和麻烦。

有没有办法让它更聪明更好?比如header?.let{ it.toUpperCase() }在 Kotlin 中?

4

1 回答 1

2

我想那个标题有一个字符串类型?似乎逻辑表达式中使用的变量必须是当前上下文的局部范围的一部分。在您的示例中,将标头作为字符串传递?如果其值不为 null,则类型化参数允许您访问 String 方法。

  Widget _buildHeader(String? header) {
    if (header != null) {
      return Text(h.toUpperCase());
    }
    return Container();
  }

于 2021-03-18T19:55:08.903 回答