小编Dav*_*und的帖子

Flutter Riverpod 消除多个依赖提供程序

正如 Riverpod 文档中所述,Riverpod 提供程序可以监视其他提供程序来创建“处理管道”。

我有这样的事情:

final prov = Provider<String>((ref){

    final w1 = ref.watch(prov1);
    final w2 = ref.watch(prov2);
    final w3 = ref.watch(prov3);
    final w4 = ref.watch(prov4);

    final complex = expensiveFunction(w1,w2,w3,w4);

    return complex;
});
Run Code Online (Sandbox Code Playgroud)

prov1可以prov4通过 UI 的各个部分单独修改,但某些 UI 操作会导致其中部分或全部快速连续更改。

我怎样才能消除呼叫expensiveFunction()直到w1..w4在 2 秒内都没有改变?

flutter riverpod

8
推荐指数
1
解决办法
1404
查看次数

如何最好地使用 Riverpod 管理列表中的项目

我正在努力弄清楚如何在以下场景中使用 Riverpod。

我有一个 ListView,其中子视图是内部带有按钮的容器。

当按下按钮时,我想更改该容器的颜色。我希望使用 Riverpod 提供程序将该颜色存储在一个状态中。

列表之外还有另一个按钮。当按下它时,它应该改变所有容器的颜色。

在此输入图像描述

感觉就像我需要为每个容器一个 Change/StateNotifierProvider 。我为此使用家庭吗?我如何将特定的状态片段与其关联的容器绑定?

红色按钮如何访问所有状态以更改所有状态的颜色?

作为奖励,我还希望当绿色按钮之一更改其容器的颜色时通知红色按钮

非常感谢

flutter riverpod

7
推荐指数
1
解决办法
7715
查看次数

Flutter中如何通过print()来登录release模式?

我的网络应用程序有一个仅在配置文件和发布版本中出现的问题(小部件未正确渲染,仅产生灰色)。我想添加一些 print() 语句来帮助找出问题所在,但 print() 不会在配置文件/发布版本中将任何内容记录到 VSCode 调试输出窗口。

有什么想法如何解决这个问题吗?

我还可以使用哪些其他技术来诊断仅发布问题?

谢谢

debugging logging release flutter

2
推荐指数
1
解决办法
3770
查看次数

标签 统计

flutter ×3

riverpod ×2

debugging ×1

logging ×1

release ×1