0

私は次のようなネストされたオブジェクトを持っています:

Album
-- Track 1
----Clip
--Track 2
----(None)
Album
--Track x
----Clip

ノックアウトマッピングプラグインを使用してviewModelを作成しました。すべてが期待どおりに機能しています(実際、このスレッドの助けを借りて、ネストされたオブジェクトを使用してノックアウトjsを解決することはできません

ここで問題となるのは、トラック2のクリップオブジェクトが最初は存在しないことです。インターフェイスで、ユーザーが作成し、サーバーからこのクリップオブジェクトに関する適切なJSONを取得しました(ajax呼び出し)。では、viewModel(viewModel.albumsはマップされたオブジェクト)を更新して、このクリップ情報をAjaxコールバックからトラック2にプッシュするにはどうすればよいですか?ajaxコールバックからのトラックのコンテキストについての手がかりはありません。もしあれば、もっと簡単だと思います。

質問が意味をなさない場合は、jsfiddleにもっと視覚的なものを入れようとします。前もって感謝します。

4

1 に答える 1

0

次のようなものが必要なようです。

viewModel.albums()[i].tracks()[j].clip = ko.mapping.fromJS(data);

iはプッシュしたいアルバムで、jプッシュしたいアルバムのトラックです。

于 2012-09-24T16:56:57.600 に答える