計算された関数を 1000 ミリ秒ごとに実行して、UI に表示される 1000 ミリ秒ごとに新しいタイムスパン値を取得できますか?
self.timespan = ko.computed(function() {
return self.orderTime() + " " + new Date();
});
計算された関数を 1000 ミリ秒ごとに実行して、UI に表示される 1000 ミリ秒ごとに新しいタイムスパン値を取得できますか?
self.timespan = ko.computed(function() {
return self.orderTime() + " " + new Date();
});
タイマー オブザーバブルでラップし、次のようにnew Date()
を使用して 1000 ミリ秒ごとに更新します。setInterval
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());
timer
必要に応じて、オブザーバブルを直接公開するかどうかに応じて、ViewModel のスコープに対して常にプライベートにすることもできます。
デモについては、このフィドルを参照してください。