在knockoutjs中自动更新显示

Gen*_*sky 9 knockout.js

如何在没有用户生成的事件的情况下显示和更新时间?这是我的开始,但我无法弄清楚如何让视图刷新.

function viewModel() {
    this.clock = ko.computed(function() { return new Date().getTime(); }, this).extend({ throttle: 1000 });

};

ko.applyBindings(new viewModel());
Run Code Online (Sandbox Code Playgroud)

使用以下HTML:

<span data-bind="text: clock"></span>
Run Code Online (Sandbox Code Playgroud)

这是jsfiddle.

Gen*_*sky 22

这似乎可以解决问题:

function viewModel() {
    var self = this;

    this.clock = ko.observable(new Date());

    this.tick = function() {
        self.clock(new Date());
    };

    setInterval(self.tick, 3000);
};

ko.applyBindings(new viewModel());
Run Code Online (Sandbox Code Playgroud)

与此HTML结合使用时:

<span data-bind="text: clock"></span>
Run Code Online (Sandbox Code Playgroud)