【发布时间】:2021-05-10 17:52:49
【问题描述】:
在 Riverpods 中,可以嵌套 ConsumerWidgets 吗?像这样的东西?我想这样做是为了让我的 api 分开,但感觉可能会降低性能?
class Foo1 extends ConsumerWidget {
@override
Widget build(BuildContext context, ScopedReader watch) {
// watch something
return Container(
child: Foo2(),
);
}
}
class Foo2 extends ConsumerWidget {
@override
// watch something
Widget build(BuildContext context, ScopedReader watch) {
return Container();
}
}
【问题讨论】:
-
您是否在每个
ConsumerWidget中收听同一个提供商? -
不,不同的。例如,详细信息可能针对 Foo1,而 cmets 针对 Foo2。但作为替补,我在想。我可以将详细信息和 cmets 的数据放入 1 个提供者中,但感觉不那么干净。 @7mada 你有什么想法吗?
-
那很好,如果你想使用 1 个提供者,你可以将它与作用域提供者一起使用来过滤重建。