Flutter Firebase 如何在模型 class 内将 DocumentSnapshot 转换为模型 Json

Flutter Firebase How to convert DocumentSnapshot to Model Json inside a model class

我有这个 Firebase 文档,我想将其转换为 JSON 并在应用程序中使用它时向其添加 ID。

factory Recipe.fromDocument(DocumentSnapshot doc) {
    final data = doc.data()!;
    return Recipe.fromJson(data).copyWith(id: doc.id);
  }

我收到以下错误

试试这个

factory Recipe.fromDocument(DocumentSnapshot doc) {
    final data = doc.data()! as Map<String, dynamic>;
    return Recipe.fromJson(data).copyWith(id: doc.id);
  }

根据 FlutterFire usage documentation

DocumentSnapshot doc;
doc.data() is of type Map<String, dynamic>;