使用Flutter获取Firestore文档密钥

问题描述 投票:1回答:1

我从https://pub.dartlang.org/packages/cloud_firestore#-readme-tab-获得了以下代码,但我不确定如何获取每个文档的密钥。我想要做的是点击每个术语来查看或进入编辑页面。

Firestore数据模型:

-content
--sPuJxAJu0dBMZLBTakd4
---term
---body content

码:

class _TermsState extends State<Terms> {
  @override
  Widget build(BuildContext context) {
    return StreamBuilder<QuerySnapshot>(
      stream: Firestore.instance.collection('content').snapshots(),
      builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {
        if (snapshot.hasError) return Text('Error: ${snapshot.error}');

        switch (snapshot.connectionState) {
          case ConnectionState.waiting:
            return Text('Loading...');
          default:
            return ListView(
              children:
                  snapshot.data.documents.map((DocumentSnapshot document) {
                print(document['term']);
                return ListTile(
                  title: Text(document['term']),
                );
              }).toList(),
            );
        }
      },
    );
  }
}
dart flutter google-cloud-firestore
1个回答
1
投票

当你有一个DocumentSnapshot时,你可以使用document.documentID获取它的密钥和document.reference.path来获得整个路径。

在这种情况下,documentDocumentSnapshot类型的对象,您已经正确检索了它。

© www.soinside.com 2019 - 2024. All rights reserved.