Bootstrap timepicker获得NaN,同时增加或减少小时和分钟

时间:2016-05-06 21:04:32

标签: javascript angularjs angular-ui-bootstrap momentjs bootstrap-datetimepicker

我想弄清楚为什么uib-datepicker总是显示NaN,同时增加或减少小时和分钟。

    <uib-timepicker ng-model="aliasCtrl.beginning"
                    hour-step="hStep"
                    minute-step="mStep"
                    readonly-input="false"
                    show-meridian="ismeridian"></uib-timepicker>

与以下控制器链接:

angular.module('app')
  .controller(
    'newController', ['$http', '$uibModalInstance', 'params', function($http, $uibModalInstance, params) {

      var rootScope = this;

      rootScope.begin= params.beg.format('hh:mm');

      rootScope.beginning = new Date();
      rootScope.beginning.setHours(parseInt(this.begin.split(':')[0]));
      rootScope.beginning.setMinutes(parseInt(this.begin.split(':')[1]));
      ...

在与datepicker进行任何互动之前,它会显示预编译的值... params.begMoment

1 个答案:

答案 0 :(得分:1)

我忘记将aliasCtrl.放在hStepmStep的开头,这意味着时间选择器不知道增加或减少多少小时和分钟。

应该是这样的:

 <uib-timepicker ng-model="aliasCtrl.beginning"
                hour-step="aliasCtrl.hStep"
                minute-step="aliasCtrl.mStep"
                readonly-input="false"
                show-meridian="aliasCtrl.ismeridian"></uib-timepicker>

因为在我的控制器中我还有rootScope.hstep = 1;rootScope.mstep = 30;rootScope.ismeridian = false;

我没想到。