【发布时间】:2021-10-31 15:45:16
【问题描述】:
我将我的颤振项目更新为 nullsafety 并收到错误消息:
函数不能被无条件调用,因为它可以是'null'。 尝试添加一个空检查 ('!')。
对于我已经检查过 null 的变量。现在这样做的正确方法是什么?我知道我可以添加!,因为我知道它不能为空。但我不明白为什么。如果有更多代码,则可能会删除空检查并保留! 运算符。
这是我的代码示例:
final Function? suggestionsCallback;
if (widget.suggestionsCallback != null &&
widget.defaultSearchPattern.isNotEmpty &&
pattern.isEmpty) {
return await widget.suggestionsCallback(widget.defaultSearchPattern); // here is the error
} else {
return widget.suggestionsCallback != null
? await widget.suggestionsCallback(pattern) // here is the error
: [];
}
【问题讨论】:
标签: flutter dart dart-null-safety null-check