Flutter Firebase 如何将 DocumentSnapshot 转换为模型类中的 Model Json

use*_*830 5 firebase flutter google-cloud-firestore flutter-freezed

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

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

我收到以下错误 在此输入图像描述

Sah*_*ani 3

尝试这个

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

根据FlutterFire使用文档

DocumentSnapshot doc;
doc.data() is of type Map<String, dynamic>;
Run Code Online (Sandbox Code Playgroud)