計算された変数で使用される Knockout 観測可能変数を変更するループがあります。その計算された変数にバインドされたスパンがあります。実行すると、そのスパンの UI は変わりません。整数値がコンソールにポストされているので、計算された変数が処理されていることがわかります。
これが私のJSです:
var PlayerViewModel = function () {
var self = this;
self.NumberOfLoops = ko.observable(0);
self.StartLoopTime = ko.observable(new Date());
self.LoopsPerMinute = ko.computed(function () {
var a = self.NumberOfLoops();
var b = new Date() - self.StartLoopTime();
var c = a / ((b) / 60000);
var d = Math.round(c);
console.log(d);
return d;
});
self.Loop = function () {
//..Stuff..
var count = self.NumberOfLoops();
count = count + 1;
self.NumberOfLoops(count);
//..More Stuff..
//Call self.Loop again
};
}
HTML:
<span data-bind="text: LoopsPerMinute">0</span>
「PlayerViewModel」でも他のオブザーバブルと計算されたものにバインドされた他のDOM要素があり、それらは機能しています。ループの実行中にテキストが自動的に変更されるべきではありません。現在はありません。
どんな助けでも大歓迎です!ありがとう!