• Computed Observable的参数


    构造计算监控(Constructing a computed observable)

    1. ko.computed( evaluator [, targetObject, options] ) 

    evaluator  用来得到结果的函数

    targetObject  定义在evaluator调用时的this

    options  参见下面的说明

    2. ko.computed( options )

    read  必须。用来得到结果的函数。

    write  可选。如果设置了此值,则计算监控是可写的。 (参见 可写的计算监控)

    owner  可选。read, write函数中的This。

    pure  可选。如果为true,则这个计算监控是pure computed observable,效果和ko.pureComputed是一样的。

    deferEvaluation  可选。如果设置为true,则这个计算监控的值不会马上计算,除非有其他代码主动访问它的值或者手动订阅。一般情况下,计算监控的值是会在创建的时候马上计算的。

    disposeWhenNodeIsRemoved  可选。如果指定了,当指定的DOM元素被删除了,计算监控也会被释放。这通常会用在模板绑定中,当模板的元素被删除了,计算监控也会被释放。

    3. ko.pureComputed( evaluator [, targetObject] )  构造pure computed observable,参数意义参见ko.computed

    4. ko.pureComputed( options )  参数意义参见ko.computed。

    使用计算监控(Using a computed obsevable)

    计算监控提供了如下的函数:

    dispose()  手动调用释放计算监控,清除所有订阅。通常要停止 对计算监控值的计算或者要清除计算监控的内存时会调用(一般很少用)

    extend(extenders)  扩展用

    getDependenciesCount()  获取计算监控的依赖数。

    getSubscriptionsCount()  获取订阅数。

    isActive()  返回是否计算监控可以被更新。计算监控如果没有依赖它就会是inactive的。

    peek()  返回当前值,而不会产生依赖。

    subscribe( callback [,callbackTarget, event] )  注册一个manual subscription

    使用上下文

    在计算函数中,可以使用ko.computedContext获取当前计算属性的上下文,它提供了如下的函数:

    isInitial()  一个函数,如果返回true,说明是第一次调用。在pure computed observables中,isInitail()是undefined.

    getDependenciesCount()  获取计算监控到当前调用此函数的代码为止所产生的依赖数

    注:ko.computedContext.getDependenciesCount()  和 在计算监控内部调用getDependenciesCount() 是等效的(但是在计算监控内部怎么调用呢?不是很清楚)。

  • 相关阅读:
    变色DNA(最短路思维题)
    Clairewd’s message(哈希模板+)
    Built(最小生成树+构图离散化)
    Palindrome Degree(hash的思想题)
    字符串哈希算法(以ELFHash详解)
    Making Genome in Berland (DFS+思维)
    统计难题(字典树模板)
    Buy Tickets(线段树单点更新,逆向思维)
    fPzByjvwjL
    Beauty of Array ZOJ
  • 原文地址:https://www.cnblogs.com/wileywong/p/4206595.html
Copyright © 2020-2023  润新知