我使用firebase作为数据库,然后我从firestore获取一些数据但抛出这个错误,
"用于空值的空检查运算符",
我不明白为什么。
ps: Flutter 新手
这是我的主屏幕代码:
class _HomeState extends State<Home> {
Map<String, dynamic>? userData = {};
PanelController _panelController = PanelController();
Widget build(BuildContext context) {
getUserData().then((DocumentSnapshot documentSnapshot) async {
if (documentSnapshot.exists && documentSnapshot.data() != null) {
setState(() {
userData = {"data": documentSnapshot.data()};
});
}
});
return Scaffold(
appBar: CustomAppbar(
title: translate("APP_BAR.TITLE.HOME"),
canBack: false,
),
body: Stack(
fit: StackFit.expand,
children: <Widget>[
Text(userData!['data']!['userName']),
],
),
drawer: CustomDrawer(),
);
}
}
这是我的 Api 服务
final _auth = FirebaseAuth.instance;
final FirebaseFirestore _fireStore = FirebaseFirestore.instance;
final userId = getData(user_uid);
getUserData() {
return _fireStore.collection('Users').doc(userId).get();
}