Cip*_*ian 5 dart flutter google-cloud-firestore
我从https://pub.dartlang.org/packages/cloud_firestore#-readme-tab-获得了以下代码,但我不确定如何获取每个文档的密钥。我想要做的是点击每个术语以查看或进入编辑页面。
Firestore数据模型:
-content
--sPuJxAJu0dBMZLBTakd4
---term
---body content
Run Code Online (Sandbox Code Playgroud)
代码:
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(),
);
}
},
);
}
}
Run Code Online (Sandbox Code Playgroud)
当您拥有 a 时DocumentSnapshot,您可以使用document.documentID来获取其密钥并document.reference.path获取整个路径。
DocumentSnapshot.reference返回DocumentReference此快照的 ,它可用于(也)获取文档的documentID和 完整内容。path
在本例中document是一个类型为 的对象DocumentSnapshot,您已经正确检索到该对象。
| 归档时间: |
|
| 查看次数: |
3823 次 |
| 最近记录: |