我的视图是一个由 FooList
小部件组成的 FooListTile
小部件。可以轻按每个图块以打开一个 FooSettingsPage
。
我的初始版本是一个单一的 AsyncValue<List<Foo>>
foosProvider
,它在每次采取行动时更新其状态,即更改单个项目的设置将重建整个列表。
我想改进这个并更好地分离动作,所以我想出了这个:
AsyncValue<List<Foo>>
foosProvider
:提供列表操作,如 add
和 remove
Foo
fooProvider(foo)
:提供 updateSetting
等项目操作我在 fooProvider(foo)
中创建了 FooList
并将其传递给 FooListTile
和 FooSettingsPage
。现在更新设置只会重建有问题的图块。
这并不理想,但似乎工作正常。但是在更新项目设置后 foosProvider
显然仍然包含原来导致问题的旧值。
因为我是新手,所以我想知道我是否缺少一种更好的方法。