mobx observables 解释

Explanation of mobx observables

我最近开始探索 JavaScript 中用于状态管理的库,并且遇到了 Mobx。我试过通过网络搜索无法找到关于这些可观察量到底是什么的解释。我了解他们的工作,但我想更深入地了解他们的工作方式。作为一个库,observables 显然让我们的事情变得更容易,而不必对它们进行太多推理,但我仍然觉得我想要一个解释。

Mobx "just" 是 observable pattern 的实现,还是以某种方式偏离?

如果您真的想知道某些东西是如何工作的,通常最好只看 the code

我不是 "observer pattern" 方面的专家,但使用@zvona 的 link 在我看来 "yes, mobx is just an implementation of the observer pattern."

基于此的理由post:

  • Defines a one-to-many dependency between objects so that when one object changes state, all its dependents are notified and updated automatically.

    • 请注意 IObservable 有一个名为 observers
    • 的 属性
  • Observers explicitly ask Observables to add them to the observer list the Observable maintains.

    • 我想说这绝对是通过 addObserver
    • 在 MobX 中发生的事情
    • 添加到 observable.observers 数组的任何新观察者都是 IDerivation
    • 类型
    • 请注意该文件中指向您的注释 An in-depth explanation of MobX

[MobX] 是否以某种方式偏离 [观察者模式]?

我已经说过我不是观察者模式的教科书定义方面的专家。我找不到 Michel Weststrate 写的任何明确说明 MobX 这种模式的实现(并不是我看起来那么努力),但我打算出去肢体并建议(像大多数 JavaScript 图书馆一样)与教科书有一些偏差。但我不知道是否值得挑剔那些。