ユーザーは、入力フィールドに値を入力するときに奇妙な動作に気付き始めました。12000 を入力すると、オブザーバブルのエクステンダーを介して 12,000 にフォーマットされます。カンマの後ろにカーソルを移動し、最初の 0 を削除して数値に 500 を加算しようとすると、カーソルは数値の末尾に移動し、結果は 12,005 になります。
入力時にモデルの同期を保つために、valueUpdate:'afterkeydown' を使用することが重要です。
これを処理するためのより良い(適切な)方法はありますか?
var ViewModel = function() {
this.numberOne = ko.observable(0).extend({ formattedNumeric: null });
this.numberTwo = ko.observable(0).extend({ formattedNumeric: null });
this.addThem = ko.computed(function() {
return this.numberOne.raw() + this.numberTwo.raw();
}, this).extend({ formattedNumeric: null });
};