[InputNumber] Angularディレクティブを使用してvalueプロパティを設定した場合、値が丸められる

文書番号 : 81518     文書種別 : Bug
登録日 : 2015/12/16     最終更新日 : 2016/05/18

対象製品

Wijmo 5

ステータス

修正済み

詳細

Angularディレクティブを使用してvalueプロパティを設定した場合、小数第三位の値が四捨五入された値に丸められます。
本事象は下記の設定を行っている場合に発生します。
・formatプロパティに"f4"と書式設定している

例えば、下記コードのように設定した場合は123.0000と表示されます。
<wj-input-number format="f4" value="123.0010"></wj-input-number>

※5.20152.90以前のバージョンでは、valueプロパティのみ丸められます。
※5.20153.109以降のバージョンでは、valueプロパティとtextプロパティの両方が丸められます。

【再現手順】
1.サンプルを実行します
結果:123.0000と表示されます

サンプル

回避方法

この問題はバージョン5.20161.151で修正されました。
修正版の適用方法については、アップデートの方法を参照してください。

修正版を適用しない場合の回避方法は次のとおりです。

下記コードのようにInputNumberのinitializedイベントでvalueプロパティを再度設定します。

※Angularディレクティブでtextプロパティに設定した場合でも、initializedイベントではvalueプロパティに設定します。

◆サンプルコード(HTML)
----------------------------------
<div ng-app="app" ng-controller="appCtrl">
  <div>
    <wj-input-number format="f4" value="123.0010" initialized="Initialized1(s)"></wj-input-number>
  </div>
  <div>
    <wj-input-number format="f4" text="123.0010" initialized="Initialized2(s)"></wj-input-number>
  </div>
</div>
----------------------------------

◆サンプルコード(JavaScript)
----------------------------------
var app = angular.module('app', ['wj']);
app.controller('appCtrl', function ($scope) {
  $scope.Initialized1 = function(s) {
    // valueプロパティに同じ値をもう一度設定します。
    s.value = 123.0010;
  }
  $scope.Initialized2 = function(s) {
    // textプロパティに設定した場合でも、valueプロパティに同じ値を設定します。
    s.value = 123.0010;
  }

});
----------------------------------