flutter 火焰飘动:如何获取列表中文档的ID

dwbf0jvd  于 2023-03-31  发布在  Flutter
关注(0)|答案(1)|浏览(114)

我正在努力弄清楚如何获取项目列表的id。我知道我可以获取单个文档并获取id,但对于列表,不知道如何做到这一点?下面我希望我的列表返回每个ProductType的id沿着名称

Future<List<ProductType>> getProductTypes() async {
    var query = await collection.get();
    return query.docs.map((e) => ProductType.fromJson(e.data())).toList();
  }


  ProductType.fromJson(Map<String, Object?> json) : this(
    name: json["name"]! as String,
  );
bvjveswy

bvjveswy1#

您可以使用QueryDocumentSnapshot.id属性获取文档的ID。

Future<List<ProductType>> getProductTypes() async {
  var query = await collection.get();

  return query.docs.map((e) => ProductType.fromJson({
    "id": e.id,
    "name": e.data()["name"]! as String,
  })).toList();
}

https://pub.dev/documentation/cloud_firestore/latest/cloud_firestore/QueryDocumentSnapshot-class.html

相关问题