1

我很好奇 BreezeJS 如何能够确定实体的哪些属性已更改并且仍然支持 IE8?

我正在构建的库需要类似的功能。JavaScript setter/getter 将是最简单的解决方案,但是它们不支持 IE8 中的非 dom 对象。

他们是否使用类似:https ://gist.github.com/eligrey/384583 :或其他东西?

4

1 回答 1

1

它取决于使用的“modelLibrary”,对于主干和淘汰赛,Breeze 使用底层淘汰赛或主干对象的“可观察性”。对于 AngularJS 之类的东西,不需要底层对象支持可观察性,Breeze 使用其“backingStore”模型库,该模型库的功能与您在问题中指向的 Object.watch 实现非常相似。

“backingStore”实现,如上面的 Object.watch 实现,将无法在 IE8 上运行,因为不支持 javascripts“defineProperty”。

希望这可以帮助。

于 2013-05-03T21:58:39.753 回答