ObservableArray: syncComponents()

バンディングターゲットとの同期処理を行います。

構文

observableArray.syncComponents(operation) => void

引数

  • operation: object

    対象の ObservableArray と同期しているバインディングターゲットとの同期に必要な情報を持つオブジェクトです。以下のプロパティを持ちます

    • operation.kind: ObservableArray.OperationKind.SORT | ObservableArray.OperationKind.SPLICE

      配列操作の種別です。

    • operation.from: this | object

      対象の ObservableArray 自身またはそれと同期しているバインディングターゲット。ObservableArray 自身からの呼び出しではその this が設定され、バインディングターゲットからの同期処理の場合はそのバインディングターゲットへの参照が設定されます。

    • operation.indexMap: ({ from: number, to: number })[]?

      配列要素の入れ替えを表すオブジェクトの配列です。このプロパティは operation.kindSORT の場合のみ与えられます

    • operation.startIndex: number

      配列要素の削除や配列への要素の挿入の開始位置を示す整数です。このプロパティは operation.kindSPLICE の場合のみ与えられます

    • operation.deleteCount: number

      削除される配列要素の個数を示す整数です。このプロパティは operation.kindSPLICE の場合のみ与えられます

    • operation.insertedItems: object[] | ObservableObject[]

      挿入される配列要素の配列です。operation.kindthis の場合は ObservableObject の配列が与えられ、バインディングターゲットの場合は object の配列が与えられます。このプロパティは operation.kindSPLICE の場合のみ与えられます

解説

バンディングターゲットとの同期処理を行います。

note
  • この関数を明示的に呼び出す必要はありません。ObservableArray またはそのバインディングターゲットが操作されるたび、必要ならこの関数が呼び出されます。