我想从flutter的firestore中获取联系方式,如电话号码、电子邮件地址、网站网址以及社交媒体网址,我做了编码直接在应用程序中显示联系方式,但我需要从firestore中获取数据,因为如果我将来需要更改联系方式,这对我很有好处。
"我的密码"
import 'package:cloud_firestore/cloud_firestore.dart';
class AboutPage extends StatelessWidget {
const AboutPage({Key key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: LightColor.white,
appBar: CustomAppBar(
isBackButton: true,
title: customTitleText(
'Contact us',
),
),
body: ListView(
physics: BouncingScrollPhysics(),
children: <Widget>[
HeaderWidget(
'Feel free to contact us',
secondHeader: true,
),
SettingRowWidget(
"Phone",
vPadding: 0,
showDivider: false,
onPressed: () {
Utility.launchURL(///i want to display this url from firestore///
"tel:+918889999888");
},
),
HeaderWidget('Social media'),
SettingRowWidget("Facebook", showDivider: true, onPressed: () {
Utility.launchURL( ///i want to display this url from firestore///
"https://facebook.com/ecways");
}),
HeaderWidget('Website'),
SettingRowWidget("Open website", showDivider: true, onPressed: () {
Utility.launchURL( ///i want to display this url from firestore///
"https://facebook.com/");
}),
],
),
);
}
}
我创建了firestore数据库与收集名称“我的联系人”和文档名称“详细信息”,我也创建了电话,电子邮件,网站和其他字段。现在我只想知道如何显示我的应用程序与我的编码收集。
3条答案
按热度按时间c86crjj01#
首先,您必须将firestore数据库更改为
应该有一个名为联系人的数组,里面应该有3个Map根据您的数据。
然后在screen类中创建一个列表。
然后创建一个函数从firestore检索数据。
然后在initState函数中调用此函数。
最后将listView替换为listViewBuilder。
我就是这么做的。谢谢...
vfh0ocws2#
flutterfire现在有一个很好的演练。请参考本节从firestore www.example.com获取数据https://firebase.flutter.dev/docs/firestore/usage/#collections--documents
p1iqtdky3#
使用
null Safety
更新2023有两种方式:
1.流生成器
当您希望不断听取更改,并希望数据在不进行热重新加载/重新启动的情况下得到更新时
2.未来构建者
当您只想获取文档一次,并且不需要不断地监听文档的更改时。
流生成器
未来建筑师
另请参阅:How to use
StreamBuilder
andFutureBuilder
for single and multiple documents