【发布时间】:2020-02-05 18:38:27
【问题描述】:
// I called widget from widget
Navigator.of(context).pushNamed('/placebids', arguments: {
'ProductId': productDocumentId,
'ProductName': productName,
});
String productId, productName ;
@override
void initState() {
super.initState();
_fetchBidofAllTheUsersForCompare();
}
Future<void> _fetchBidofAllTheUsersForCompare() async {
final QuerySnapshot _dbr =
await Firestore.instance.collection("Pro-$productName-$productId").getDocuments();
List<DocumentSnapshot> templist;
templist = _dbr.documents;
List<Map<dynamic, dynamic>> list = new List();
list = templist.map((DocumentSnapshot ds) {
return ds.data;
}).toList();
list.forEach((item) => {
item.forEach((key, value) => {
print(value)
})
});
}
Widget build(BuildContext context) {
final routeArguments =
ModalRoute.of(context).settings.arguments as Map<String, String>;
productId = routeArguments['ProductId'];
productName = routeArguments['ProductName'];
return Scaffold();
}
当我尝试调用 initState() 中的方法时获取 ProductId 和 ProductName 的 null 值;如果我在 Widget 中收到这些值,那么如何在 initState 方法中使用它
【问题讨论】:
标签: flutter google-cloud-firestore