我无法在 flutter firestore 上将字段设置为 NULL

I can't set field to NULL on flutter firestore

我使用 JSON 序列化将文档上传到 firestore。

我刚刚将我的 flutter 项目更新为 nullsafety,现在我在任何 NULL 字段上都收到此错误:

Error: [cloud_firestore/unknown] Expected a value of type 'Object', but got one of type 'Null'

我在 class 中的字段是空值:

String? field;

这是一个错误还是我做错了什么? 在此更新之前,我能够拥有空字段。我使用网络构建

由于新的空值安全功能,新的 Cloud Firestore 库无法存储空值。我建议您使用一个关键字,例如一个空的 space 或一段复杂的字符串作为您的自定义 null 变量,它应该可以工作 声明

String newNull = 'IntricateNull';

传递到 Firestore

'nullValue':newNull

接收数据时使用

if (value != newNull){//To check value is not null
}

这不是一个有利的解决方案,但它就是这样。空安全有其缺点和优点。