binding之component

来源:互联网 发布:22lr子弹淘宝 编辑:程序博客网 时间:2024/05/22 01:48

该节的例子应该使用Knockout3.2.0以上版本,因为这次更新最大的改进之一就是引入了组件(Component)的概念,通过配合使用组件与自定义元素(Custom element),你能够方便地将应用分解为可重用的小部件(widget)、区域(section)或页面。

组件能够将一个视图模型(View model)与一个模板组合为一个封装包,这方面的例子可以是一个导航栏或者是进度面板。你可以使用“组件绑定”将这些组件与普通的div元素绑定在一起,不过还有一种更为强大的用法存在:你可以在应用中使用自定义元素。



此次更新还带来了其它一些改进:

  • ko.pureComputed - 这是ko.computed的一种变体形式,它提供了更好的性能与内存管理方式。这一特性只对推断式可观察对象(computed observable)有效,这种对象在推断结果时不会造成任何副作用,而且它的结果完全是由应用中其它可观察对象的值产生的。换句话说,这一特性要求这种推断式可观察对象的值不能够受到任何来自于整个依赖跟踪体系结构之外的隐藏值或是状态值的影响。
  • 新的“textInput”绑定,它能够将元素或 
  • 对于复选框与单选框控件,现在使用“value”绑定将能够获得与使用“checkedValue”绑定相同的行为了。这是由于许多人会在应该使用“checkedValue”绑定时错误地使用了“value”绑定,因此这一改动能够保证在你犯错时依然提供了你所期望的行为。而“checkedValue”这一绑定依然可以继续使用。