Flutter 基于mobx的颤振可观测列表
我试图创建一个可观察列表(即,当列表中的某个元素被更改、删除或添加时,我希望UI得到更新)。我知道mobx有一个叫做“可观察列表”的东西,所以这似乎是可能的。然而,我在执行它时遇到了问题。我的mobx存储文件中当前有以下代码:Flutter 基于mobx的颤振可观测列表,flutter,dart,mobx,Flutter,Dart,Mobx,我试图创建一个可观察列表(即,当列表中的某个元素被更改、删除或添加时,我希望UI得到更新)。我知道mobx有一个叫做“可观察列表”的东西,所以这似乎是可能的。然而,我在执行它时遇到了问题。我的mobx存储文件中当前有以下代码: var metrics = Observable([.5,.5,.5]); 然后,我尝试更改其中一个元素,如下所示: metrics[index] = data; 我得到一个错误: 没有为类“Observable>”定义方法“[]=”。 有没有办法在flift中创建一
var metrics = Observable([.5,.5,.5]);
然后,我尝试更改其中一个元素,如下所示:
metrics[index] = data;
我得到一个错误:
没有为类“Observable>”定义方法“[]=”。
有没有办法在flift中创建一个可观察列表(或者更好地说,一个可观察字典),或者还没有实现
谢谢 使用MobX,您需要创建带有
@action
注释的方法,以便在可观察的
上收到更改通知
在你的店里,你一定有
在这种情况下,在
yourStore.metrics
可观察列表中进行一些更改后,将触发Observer
builder回调并更新列表视图。您可以使用我的代码。您需要添加“.of”来初始化列表
ObservableList<int> values = ObservableList<int>.of([1,2,3]);
Observer(
builder: (context) =>
ListView.builder(
itemCount: yourStore.metrics.length,
builder: (_, index) => Text('${yourStore.metrics[index]}'),
),
);
ObservableList<int> values = ObservableList<int>.of([1,2,3]);
values[index] = data;