在mobx反应上获取相同的值,监听ObservableList

问题描述 投票:0回答:1

我正在使用flutter上的mobx软件包。 (全部在最新的稳定版本上)

我正在尝试使用reaction列出ObservableList的更新,reaction仅被调用一次,因为下一次调用时,新值和旧值是平等的,我不明白为什么。代码的所有其他部分都按预期运行。

示例代码:

abstract class _TesteControllerBase with Store {
  _TesteControllerBase() {
    reaction((_) => list, (list) {
      // print(list.length);
    }, equals: (newValue, oldValue) {
      print('newValue: $newValue');
      print('oldValue: $oldValue');

      return newValue == oldValue;
    });
  }

  @observable
  ObservableList<String> list = ObservableList();

  @action
  addNew() {
    list.add('${list.length + 1}');
  }
}

打印将相同的值返回到newValue和oldValue(附加图像)。>>

正在运行的代码的图像:

enter image description here

我在flutter上使用mobx软件包。 (全部在最新的稳定版本上)我正在尝试使用该反应来列出ObservableList的更新,该反应仅被调用一次,因为下一步在...

flutter dart mobx
1个回答
0
投票

此行为的原因是您比较数组

© www.soinside.com 2019 - 2024. All rights reserved.