2013-06-27 18 views

回答

3

所选答案this post采取的做法:

  • 使用微风内置的备份存储modelLibrary(代替对淘汰赛modelLibrary)
  • 有效地调用使观察到的实体使用ES5插件“嘀” ko.track(entity._backingStore)当用户表示他们想要编辑记录时。

这具有很大为实体长列出了不是让他们观察到,直到他们需要的优势。 ES5插件增加了HTML中的绑定不需要在不可观察的实体和可观察的实体之间改变的优点(因为不需要括号)。

如果您要求默认所有实体都是“ES5”可观察的,那么您最好编写一个自定义模型库适配器 - 查看Breeze调试文件(或源代码)以查看三个内置适配器:backingStorebackboneko作为示例。

3

对于Durandal,您可以挂钩到视图模型联编程序的beforeBind挂钩中,以便自动让Steve的插件在绑定之前转换您的对象。这可能无法完美工作,我自己也没有尝试过。另外,请记住,他的插件不会转换完整的对象图,只能转换对象的基本属性。所以,以这种方式进行绑定可能不会100%按您的要求工作。

Durandal 2.0拥有自己的ES5插件,可以正常工作:)它还没有发布,但是如果你想要在边缘生活,它还是源于2.0的其余部分。预定8月中旬发布。

关于微风,我不确定。

相关问题