ページに 2 つの値があります。1 つは ko.computed プロパティ、もう 1 つは ko.observable です。どちらも同じ値を取得する必要がありますが、2 つの異なる方法で取得する必要があります (基本データは ko.mapping.fromJS を使用して読み込まれます)。
//#1
self.count = ko.computed(function () {
return self.pages().length;
});
//#2
self.count2 = ko.observable(0);
ko.computed(function () {
//looks like this is not fiering
self.count2(self.pages().length);
});
私の場合、#1はうまく機能しますが、#2はまったくトリガーできません。同様に、self.page.subscribe() を使用すると、望ましい結果も得られます。
そして、この問題の 2 番目の部分があります。ネストされたオブジェクトを作成すると、ネストされたオブジェクトに対してケース #1 と #2 が期待どおりに機能しますが、トップ レベル/親オブジェクトにはまだ問題が存在します。
そして、この奇妙な動作を示すサンプルを聞いてください - http://jsfiddle.net/rrgnK/2/
この問題の原因を知りたいのですが、それは私のコード/構造ですか、それとも何か他のものですか? (私がこの方法で解決しようとしている特定の問題はありません。この奇妙な動作に気づいたので、根本的に間違ったことをしている可能性があると思いました)