observable

observable

egghead.io 第1课: observable & observer egghead.io 第4课: observable 对象 & 映射

用法:

  • observable(value)

Observable 值可以是JS基本数据类型、引用类型、普通对象、类实例、数组和映射。 匹配类型应用了以下转换规则,但可以通过使用调节器进行微调。请参见下文。

  • 如果 value 是ES6的 Map : 会返回一个新的 Observable Map。如果你不只关注某个特定entry的更改,而且对添加或删除其他entry时也做出反应的话,那么 Observable maps 会非常有用

乍看之下,这些规则可能看上去很复杂,但实际上实践当中你会发现他们是非常直观的。

一些建议:

  • 要创建 键是动态的对象 时使用 Observable Map!对象上只有初始化时便存在的属性会转换成可观察的,尽管新添加的属性可以通过使用 extendObservable 转换成可观察的。

一些示例:

const map = observable.map{ key: "value"} map.set("key", "new value" const list = observable([1, 2, 4] list[2] = 3; const person = observable{ firstName: "Clive Staples", lastName: "Lewis" } person.firstName = "C.S."; const temperature = observable.box(20 temperature.set(25 Copy