我正在寻找一种使用处理函数来响应Dart中可观察集合的更改的方法。我想将更改直接传递给函数。

List things = toObservable([]);
//...
things.onChange.listen((e) => onThingsChanged(e) ); //blows up
//...
function onThingsChanged(e){
   //...
}

显然没有onChange这样的东西,所以我在这里找什么?我发现的所有示例都只是通过HTML中的<template>标记监视更改。

最佳答案

关于Observables and Data Binding with Web UI有一篇很好的(官方)文章。我认为它仍在 build 中,因此dartlang.org网站上尚无链接。

回答您的问题的部分是:Expression Observers

您可以执行以下操作:

List things = toObservable([]);

observe(() => things, onThingsChanged);

onThingsChanged(ChangeNotification e) {
  // ...
}

09-25 22:21