【问题标题】:Flutter/Dart/Firebase - Reduce unnecessary data loadingFlutter/Dart/Firebase - 减少不必要的数据加载
【发布时间】:2020-04-23 14:44:21
【问题描述】:

我尝试搜索我的具体问题,但找不到任何合适的解决方案。 我要提前感谢大家的帮助。

我目前正在开发一个 iOS 应用程序。 应用程序代表用户可以更新的用户配置文件。 在 Firebase 的帮助下,从身份验证、注册到更新用户数据的可能性都可以正常工作。现在我想优化一些代码。 所以应用程序有 2 个屏幕,HomeScreen 和 EditScreen。 (除了注册和登录所需的屏幕)。

为了让我的问题简短: 如何减少从 Firebase 加载的数据量?

示例: 1. 用户在 HomeScreen 上,构建从 Firebase 存储加载的图像的视图 2. 他想编辑他的图像,因此切换到编辑屏幕,他的图像将再次加载 3. 更改他的图片后,新图片将上传到 Firebase 存储,他可以在 Editscreen 上看到他的新图片 4. 如果他现在切换回主屏幕,他的新图像将再次从 Firebase 加载

有没有减少加载量的好方法? 就像在第 1 步和第 2 步之间缓存图像一样? 因为显示他的图像总是有一点延迟。

谢谢! 可悲的是,我不允许共享任何代码。

【问题讨论】:

    标签: firebase flutter dart


    【解决方案1】:

    您可以查看flutter_advanced_networkimage 包。它会在加载时缓存您的照片。对于其他一切,您应该将您的 profile 对象(或任何需要 firebase 用户信息的对象)移动到这些路由上方,并通过参数或状态管理将其向下传递到您的小部件树。

    【讨论】:

    • 感谢您的回复。我对状态管理的各种方式缺乏了解。因此,我将深入研究它,然后制定解决方案。
    • 只是一个快速更新:我通过使用 Provider/Multiprovider 解决了我的问题。在登录过程中,我加载所有用户数据并通知侦听器。通过应用程序,我再次使用通知侦听器来“同步”应用程序内的更改。
    猜你喜欢
    • 2022-12-17
    • 1970-01-01
    • 1970-01-01
    • 2022-12-03
    • 1970-01-01
    • 2018-11-29
    • 2019-07-23
    • 2021-12-18
    • 1970-01-01
    相关资源
    最近更新 更多