立即从 accumB 获取更新

Getting updates from accumB without delay

accumB 的文档说:

Note: As with stepper, the value of the behavior changes "slightly after" the events occur. This allows for recursive definitions.

在我的例子中没有递归,但我想获得更新 "right now",而不是 "slightly after"。为什么没有特殊版本的accumB?我想,我遗漏了一些明显的东西?


编辑: 在我的应用程序中,我有 data Config,它包含各种配置值和一堆 Event (Config -> Config),当用户更改一些时会触发它们GUI 中的值。现在,我希望程序的其他部分可以随时访问 Config,这就是我在那里使用 Behavior Config 的原因。问题是,当更改事件被触发时,行为仍然具有旧值 Config,因此我无法立即观察到此更改。

如果您有一个 Behavior Conf,那么您可以通过 Applicative class 组合器从中创建其他行为。例如,您可能将其转换为 Behavior String,然后显示在文本字段中。将行为提供给这样的 UI 小部件后,小部件代码会确保显示行为的 new 值。

如果您需要明确指示配置何时更改,那么 Event Conf 可能更合适。您可以为此使用 accumE 函数,它将包含 new 值。