Options
All
  • Public
  • Public/Protected
  • All
Menu

监听者模式

example
new Store<{
"foo": [arg1: number, arg2: string],
"bar": [arg: boolean],
}>()

Type Parameters

Hierarchy

  • Store

Index

Constructors

  • new Store<T>(initialValue: T, onValuesChange?: ((values: T, prevValues: T) => void)): Store<T>
  • Type Parameters

    Parameters

    • initialValue: T
    • Optional onValuesChange: ((values: T, prevValues: T) => void)
        • (values: T, prevValues: T): void
        • Parameters

          • values: T
          • prevValues: T

          Returns void

    Returns Store<T>

Properties

onValuesChange?: ((values: T, prevValues: T) => void)

Type declaration

    • (values: T, prevValues: T): void
    • 全局的数据变化钩子

      Parameters

      • values: T
      • prevValues: T

      Returns void

values: T

Methods

  • getValues<K>(names: K[]): Pick<T, K>
  • 获取值

    Type Parameters

    • K extends string | number | symbol

    Parameters

    • names: K[]

      值的名称

    Returns Pick<T, K>

  • on<K>(names: K[], callback: ((values: Pick<T, K>, prevValues: Pick<T, K>) => void)): (() => void)
  • 监听数据变化

    Type Parameters

    • K extends string | number | symbol

    Parameters

    • names: K[]

      监听的字段名称

    • callback: ((values: Pick<T, K>, prevValues: Pick<T, K>) => void)

      回调函数

        • (values: Pick<T, K>, prevValues: Pick<T, K>): void
        • Parameters

          • values: Pick<T, K>
          • prevValues: Pick<T, K>

          Returns void

    Returns (() => void)

    解除监听数据变化

      • (): void
      • 监听数据变化

        Returns void

        解除监听数据变化

  • setValues<K>(names: K[], values: Pick<T, K>): void
  • 设置值

    Type Parameters

    • K extends string | number | symbol

    Parameters

    • names: K[]
    • values: Pick<T, K>

      设置值

    Returns void