database - {新的 Flutter/Dart 程序员} 有什么简单的方法可以简单地访问 Firebase 数据库中的“字段”并将其值设置为变量?
问题描述
所以我是一个全新的程序员,一般来说,我试图制作一个应用程序,我将用户可更改的名称存储为 Firebase 数据库中的一个字段。它以以下方式存储:集合(我的聊天)-文档(LzPiDS8sdf97slDlDFLKJ)<-用户ID,字段(userPreferredName:'Dave')。我似乎找不到访问此参数的简单方法。我希望每个用户只有 1 个可更改的名称,所以我认为我不需要流和所有复杂的东西(我还是新手,对不起)来访问它。我真的只想将它设置为我选择的名称(例如 Dave,我知道该怎么做),然后更改它(例如,Phil,我知道怎么做),最后使名称值变为到一个变量中,这样我就可以在一个我真的不明白该怎么做的文本小部件中显示它。
Text(nameVariable, <- 我不能让这个变量轻松地从我的字段 'userPreferredName' 中获取名称),
非常感谢你的帮忙!!我真的,真的很感激!!:)
解决方案
不确定我是否完全理解您的问题,但您可以通过以下方式查询您提到的文档:
import 'package:cloud_firestore/cloud_firestore.dart';
QuerySnapshot querySnapshot = await Firestore.instance.collection('My chat')
.where('userID', isEqualTo: 'someId')
.getDocuments();
这将返回一个 QuerySnapshot,让我们假设只有 1 个相应的文档:
Map<String, dynamic> userData = querySnapshot.documents.first.data;
然后,您可以轻松访问 userData Map 中的任何字段。
推荐阅读
- react-native - 如何将动态 URL 设置为 webview?
- javascript - 保存“办公时间”数据的正确方法是什么?
- python - 合并数据框不是基于索引而是值
- asp.net - 链接到 GridView asp 中的虚拟目录:HyperlinkField
- php - Laravel 7.15 视图中的 UUID 无法正确显示
- android - 如果单击开始按钮,则不会继续
- reactjs - React-plotly:带有选择器的时间序列范围滑块的滑动速度很慢
- java - ServerSocket 中的 accept() 接受客户端请求的速度有多快?
- mongodb - 如何在mongo中使用IN运算符和RANGE
- javascript - 如何等待承诺解决然后获取值并将其放入其他函数