Knockout.js 在KnockoutJS中每隔x秒重新计算一个计算函数

Knockout.js 在KnockoutJS中每隔x秒重新计算一个计算函数,knockout.js,Knockout.js,我是否可以执行计算函数(比如每1000毫秒一次),以在UI中每1000毫秒显示一个新的timespan值 self.timespan = ko.computed(function() { return self.orderTime() + " " + new Date(); }); 将您的new Date()包装在一个可观察的计时器中,并使用以下方式每1000毫秒更新一次: function myViewModel() { var self = this; s

我是否可以执行计算函数(比如每1000毫秒一次),以在UI中每1000毫秒显示一个新的timespan值

self.timespan = ko.computed(function() {
        return self.orderTime() + " " + new Date();
});
将您的
new Date()
包装在一个可观察的计时器中,并使用以下方式每1000毫秒更新一次:

function myViewModel() {
    var self = this;

    self.orderTime = ko.observable(new Date(2013,1,1,12,0,0));
    self.timer = ko.observable(new Date());

    self.timespan = ko.computed(function() {
        return self.orderTime() + " " + self.timer();
    });    

    window.setInterval(function() { self.timer(new Date()); }, 1000);
}

ko.applyBindings(new myViewModel());
如果需要,还可以始终将
计时器
可观察设置为ViewModel作用域的私有,具体取决于是否要直接公开它


请参阅演示。

ok我已经使用setInterval每隔x秒执行一次新的日期创建。我想了一个与击倒有关的解决方案。但是也许你的代码更优雅或者更少,我必须检查一下,谢谢!