所以我的问题是我在第一个小部件中从 firebase 获取数据,然后我通过 void -> 另一个有状态小部件单击并打开底部表,我如何将快照数据从第一个小部件传递到另一个小部件?
下面的代码不起作用...
....
Widget build(BuildContext context) {
return Container(
ElevatedButton(
child: Text('Request a tour'),
onPressed: () {
displayBottomSheet(context, widget.snapshot.data()["author"]);
},
),
);
void displayBottomSheet(BuildContext context, String author) { //updated
showModalBottomSheet(
context: context,
builder: (ctx) {
return BottomSheetWidget(author); //updated
});
}
新错误:位置参数太多:预期为 0,但找到了 1。
class BottomSheetWidget extends StatefulWidget {
final String author; //updated
BottomSheetWidget({this.author}); //updated
@override
class _BottomSheetWidgetState createState() => _BottomSheetWidgetState();
}
class _BottomSheetWidgetState extends State<BottomSheetWidget> {
Widget build(BuildContext context) {
return Container(
new ElevatedButton(
child: Text('Send'),
onPressed: () {
requestTour(widget.author); //updated
},
),
.....
}
requestTour(String userName) async {
...
}