カスタムjaydataオブジェクトの配列を使用すると、奇妙な結果になります。
var arr = [];
arr.push(new Northwind.Employee());
arr.push(new Northwind.Employee());
var newarr = ko.mapping.fromJS(arr);
デバッグが監視されている場合、変数newarrは監視可能な配列のように見えます。アンラップして基になる配列を公開しようとすると、次のようになります。
newarr()
「不特定のエラーが発生しました」というメッセージが表示されます。
さらに一歩進んだ場合、物事をより奇妙にするために:
newarr()[0]
配列の最初の要素に恵まれています。ノックアウトバインディングは期待どおりに動作します。配列操作(長さ、プッシュ、ポップ)を実行できません。これは重要です。
オブジェクトの大きなツリーを扱っているので、mapping.fromJSが本当に必要であり、ここから先に進む方法に困惑しています。マッピングはPOJOオブジェクトで適切に動作しますが、jaydataは私のパズルにとっても重要な要素です。誰かが私が間違っていることを私に示すのを手伝ってもらえますか?
これが私が話していることのフィドルです。私はそれを機能させることはできませんが、少なくとも完全なコンテキストを提供します。 http://jsfiddle.net/jpirok/AAEuM/
ご協力いただきありがとうございます!