0

ユーザーがチェックする (チェックしない) 必要があるオブジェクトのリストがあります。

var myList = [
    { id: 1, value: "aaa", checked: true}
    { id: 2, value: "bbb", checked: false}
    { id: 3, value: "ccc", checked: true}
]

ユーザーの選択に応じて、残りの要素に対していくつかのビジネス ロジックを実行する必要があります。(un) チェック アクションの後に実行する必要があるため、どの要素が影響を受けたかを正確に知る必要があります。
私は knockout.js を使用しており、このアプローチを使用して値を表示およびバインドしたいと考えています。
チェックボックスの「チェック済み」バインドは、2 つの方法で実行できます。ユーザーの選択に応じて自動的に設定されるブール値を渡す方法と、チェックされた値を公開する内容を持つ配列を渡す方法です。影響を受けるリストされたオブジェクトを取得できなかったため、両方のケースでビジネス ロジックを実行しました。

  1. ブール値をチェックボックスに渡すと、フラットなブール値が返されるため、リストされているどのオブジェクトに属しているかわかりませんでした
  2. 監視可能な配列を渡すと、その変更をサブスクライブすることしかできませんが、ハンドラーには配列全体しかなく、どの要素が影響を受けたかはまだわかりません。

手伝って頂けますか?

4

1 に答える 1

0

申し訳ありませんが、サブスクリプションにコンテキストを提供できることがわかりました。subscribe の完全な構文は次のようなものです

observableItem.subscribe(function (newValue) {...}, context, stringVal)

ここで、stringVal は、変更前のイベントにサブスクライブする「beforeChange」にすることができます。公式サイトに記載がないので知りませんでした。ところで、最新のドキュメントがどこにあるか知っている人はいますか?

于 2013-02-21T10:09:24.173 に答える