Class Watcher

对象属性变化监视器。

能用getset时就不使用watch,及时为了代码美观也尽量在低频使用的地方使用。

Hierarchy

  • Watcher

Constructors

Properties

_binds: [any, string, (() => void), any, string, (() => void)][] = []

Methods

  • 绑定两个对象的指定属性,保存两个属性值同步。

    Type Parameters

    • T0

    • T1

    • K0 extends string | number | symbol

    • K1 extends string | number | symbol

    Parameters

    • object0: T0

      第一个对象。

    • property0: K0

      第一个对象的属性名称。

    • object1: T1

      第二个对象。

    • property1: K1

      第二个对象的属性名称。

    Returns void

  • 解除两个对象的指定属性的绑定。

    Type Parameters

    • T0

    • T1

    • K0 extends string | number | symbol

    • K1 extends string | number | symbol

    Parameters

    • object0: T0

      第一个对象。

    • property0: K0

      第一个对象的属性名称。

    • object1: T1

      第二个对象。

    • property1: K1

      第二个对象的属性名称。

    Returns void

  • 取消监听对象属性的变化

    Type Parameters

    • T

    • K extends string | number | symbol

    • V

    Parameters

    • object: T

      被监听对象

    • property: K

      被监听属性

    • Optional handler: ((newValue: V, oldValue: V, object: T, property: string) => void)

      变化回调函数 (newValue: V, oldValue: V, object: T, property: string) => void

        • (newValue: V, oldValue: V, object: T, property: string): void
        • Parameters

          • newValue: V
          • oldValue: V
          • object: T
          • property: string

          Returns void

    • Optional thisObject: any

      变化回调函数 this值

    Returns void

  • 取消监听对象属性链值变化

    Parameters

    • object: any

      被监听对象

    • property: string

      被监听属性 例如:"a.b"

    • Optional handler: ((newValue: any, oldValue: any, object: any, property: string) => void)

      变化回调函数 (object: T, property: string, oldValue: V) => void

        • (newValue: any, oldValue: any, object: any, property: string): void
        • Parameters

          • newValue: any
          • oldValue: any
          • object: any
          • property: string

          Returns void

    • Optional thisObject: any

      变化回调函数 this值

    Returns void

  • 取消监听对象属性链值变化

    Type Parameters

    • T

    Parameters

    • object: T

      被监听对象

    • property: gPartial<T>

      被监听属性 例如:{a:{b:null,d:null}} 表示监听 object.a.b 与 object.a.d 值得变化,如果property===object时表示监听对象中所有叶子属性变化。

    • Optional handler: ((newValue: any, oldValue: any, host: any, property: string) => void)

      变化回调函数 newValue: any, oldValue: any, host: any, property: string => void

        • (newValue: any, oldValue: any, host: any, property: string): void
        • Parameters

          • newValue: any
          • oldValue: any
          • host: any
          • property: string

          Returns void

    • Optional thisObject: any

      变化回调函数 this值

    Returns void

  • 监听对象属性的变化

    注意:使用watch后获取该属性值的性能将会是原来的1/60,避免在运算密集处使用该函数。

    Type Parameters

    • T

    • K extends string | number | symbol

    • V

    Parameters

    • object: T

      被监听对象

    • property: K

      被监听属性

    • handler: ((newValue: V, oldValue: V, object: T, property: string) => void)

      变化回调函数 (newValue: V, oldValue: V, object: T, property: string) => void

        • (newValue: V, oldValue: V, object: T, property: string): void
        • Parameters

          • newValue: V
          • oldValue: V
          • object: T
          • property: string

          Returns void

    • Optional thisObject: any

      变化回调函数 this值

    Returns void

  • 监听对象属性链值变化

    Parameters

    • object: any

      被监听对象

    • property: string

      被监听属性 例如:"a.b"

    • handler: ((newValue: any, oldValue: any, object: any, property: string) => void)

      变化回调函数 (newValue: any, oldValue: any, object: any, property: string) => void

        • (newValue: any, oldValue: any, object: any, property: string): void
        • Parameters

          • newValue: any
          • oldValue: any
          • object: any
          • property: string

          Returns void

    • Optional thisObject: any

      变化回调函数 this值

    Returns void

  • 监听对象属性链值变化

    Type Parameters

    • T

    Parameters

    • object: T

      被监听对象

    • property: gPartial<T>

      被监听属性 例如:{a:{b:null,d:null}} 表示监听 object.a.b 与 object.a.d 值得变化,如果property===object时表示监听对象中所有叶子属性变化。

    • handler: ((newValue: any, oldValue: any, host: any, property: string) => void)

      变化回调函数 (newValue: any, oldValue: any, host: any, property: string) => void

        • (newValue: any, oldValue: any, host: any, property: string): void
        • Parameters

          • newValue: any
          • oldValue: any
          • host: any
          • property: string

          Returns void

    • Optional thisObject: any

      变化回调函数 this值

    Returns void

Generated using TypeDoc