如何消除 Flutter BLOC 模式中的“为空错误”?

Posted

技术标签:

【中文标题】如何消除 Flutter BLOC 模式中的“为空错误”?【英文标题】:How to remove the 'is null error' in Flutter BLOC pattern? 【发布时间】:2021-10-13 07:42:54 【问题描述】:

当我运行我的应用并选择我喜欢的狗品种并喜欢它时,我收到一条错误消息 -

════════ Exception caught by gesture ═══════════════════════════════════════════
The following NoSuchMethodError was thrown while handling a gesture:
The method 'contains' was called on null.
Receiver: null
Tried calling: contains(Instance of 'BreedsModel')

likeList 列表包含我喜欢的所有犬种。我该如何解决这个问题?

这是我的代码的链接 - My Code

【问题讨论】:

【参考方案1】:

这是因为你在一个空变量上调用 contains 函数。

尝试打印您正在调用的变量 contains 函数。

print(likedList);
//output will "null"

确保您处理的是空值

【讨论】:

以上是关于如何消除 Flutter BLOC 模式中的“为空错误”?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Flutter 上实现 BLoC 模式的 TDD

如何监听状态属性变化 Flutter bloc 模式

Flutter BLOC 状态更新但始终为空值

Flutter BLoC 模式 - 如何在流事件后导航到另一个屏幕?

在 BLoC 模式中传递参数 Flutter(Stream Controller)

Flutter BLoC 类中的 BuildContext