【发布时间】:2020-11-04 00:30:48
【问题描述】:
我是使用 Flutter 的新手,目前正在努力了解如何使用 Provider 包来完成以下任务,或者它是否首先是正确的实现。
我有一个小部件,它使用自身内部的另一个小部件来更新时间值。
在父小部件中,我有以下内容:
class _AddTimesScreenState extends State<AddTimesScreen> {
List<TimeOfDay> times = [];
@override
Widget build(BuildContext context) {
return Scaffold(
body: Provider<List<TimeOfDay>>.value(
value: times,
child: SetTimes()
在第二个小部件中,它用于使用我拥有的时间选择器来更新时间列表:
class _SetTimesState extends State<SetTimes> {
@override
Widget build(BuildContext context) {
final times = Provider.of<List<TimeOfDay>>(context);
基本上我的目标是能够更新第二个小部件中的时间列表,以便它可以在第一个小部件中使用。我有将 TimeOfDay 对象添加到列表中的方法,但是当代码运行时,第一个小部件中的列表似乎没有更新。
我是按照预期的方式使用 Provider,还是完全误解了它的应用?
谢谢
【问题讨论】:
-
尝试使用 Consumer 的 ChangeNotifierProvider