颤动以流形式将数据从一个屏幕传递到另一个屏幕

时间:2020-09-20 12:55:43

标签: firebase flutter google-cloud-firestore state-management

如何将数据作为流从一个屏幕传递到另一个屏幕?

当单击某个产品时,我有一个屏幕显示使用Firebase Stream(StreamProvider)的产品列表,我要转到另一个屏幕,在该屏幕上可以显示产品详细信息。我想将产品列表作为流传递到详细信息页面,这样我在详细信息屏幕上所做的任何更改都会自动更新Firestore文档。

    onTap: () {
                  Navigator.push(
                      context,
                      MaterialPageRoute(
                          builder: (context) => ProductDetails(
                                products: products
                              )));
                },

在“产品详细信息”屏幕上,我只能以List<Product>而不是Stream<List<Product>>的形式获得产品

1 个答案:

答案 0 :(得分:1)

在Flutter中,here描述了将数据发送到新屏幕的方式。

但是,我发现this SO post似乎对您的用例有用。

您可以在此处尝试BLoC实施。此外,我碰到了this Medium article,这也许可以使您对该问题有所了解。