我有一个循环可以更改在计算变量中使用的 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>
我还有其他 DOM 元素绑定到“PlayerViewModel”中的其他可观察对象和计算对象,并且这些元素正在工作。循环运行时,跨文本是否会自动更改。目前不是。
任何帮助表示赞赏!谢谢!