firebase - 尝试显示来自 Firebase Firestore 的数据
问题描述
我正在尝试显示我为其创建 Crud 文件的 Firebase Firestore 中的数据。
我在 body.dart 文件中尝试了不同的东西,我不断收到循环进度条和一些错误。
Accessing hidden method Lsun/misc/Unsafe;
多次
这是body.dart
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:flutter/material.dart';
import 'package:masterpass/Screens/Passwords/components/password_list.dart';
import 'package:masterpass/Services/crud.dart';
class Body extends StatefulWidget {
@override
_BodyState createState() => _BodyState();
}
class _BodyState extends State<Body> {
CrudMethods crudMethods = new CrudMethods();
QuerySnapshot passSnapshot;
@override
void initState() {
super.initState();
crudMethods.getData().then((result) {
passSnapshot = result;
});
}
@override
Widget build(BuildContext context) {
return PasswordList(passSnapshot: passSnapshot);
}
}
Password_List.dart
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:flutter/material.dart';
import 'package:masterpass/Screens/Passwords/components/password_tile.dart';
class PasswordList extends StatelessWidget {
const PasswordList({
Key key,
@required this.passSnapshot,
}) : super(key: key);
final QuerySnapshot<Object> passSnapshot;
@override
Widget build(BuildContext context) {
return Container(
child: passSnapshot != null
? Column(
children: [
ListView.builder(
itemCount: passSnapshot.docs.length,
shrinkWrap: true,
itemBuilder: (context, index) {
return PasswordTile(
username: passSnapshot.docs[index].get('username'),
website: passSnapshot.docs[index].get('url'),
);
},
)
],
)
: Container(
child: CircularProgressIndicator(),
),
);
}
}
这是 crud.dart
import 'package:cloud_firestore/cloud_firestore.dart';
class CrudMethods {
Future<void> addData(passwordData) async {
FirebaseFirestore.instance
.collection("passwords")
.add(passwordData)
.catchError((e) {
print(e);
});
}
getData() async {
return await FirebaseFirestore.instance.collection("passwords").get();
}
}
为了更好地理解代码:GitHub Repo
解决方案
推荐阅读
- swift - 如何在表格视图中以编程方式选择一行?(斯威夫特 4.0)
- javafx - Ubuntu 16.04 LTS 中 SceneBuilder 8.5.0 的问题
- c# - IHttpHandler - 从客户端检测到潜在危险的 Request.Form 值
- java - Java 8 流转换列表
到地图 > - python - 即使我更改类型,我的程序也将值计算为字符串而不是浮点数
- postgresql - PostGIS 升级 2.2.1 -> 2.5.0 数据库导入错误
- android - 如何绕过root设备的权限?
- go - Revel 依赖注入
- javascript - 如何从另一个 js 文件中获取 json 内容?
- javascript - Node.js / Socket.io 管理崩溃服务器(消息系统)