Angular UI Bootstrap:默认情况下,将timepicker设置为空

时间:2015-05-22 00:23:54

标签: javascript angularjs twitter-bootstrap

我正在使用Angular UI Bootstrap(https://angular-ui.github.io/bootstrap/),特别是我正在尝试使用timepicker,虽然大多数组件都有你想要的每个设置,但我还没有想出办法来获取默认情况下,timepicker为空/ null,并且没有设置来执行此操作,默认情况下,timepicker显示当前时间(网页打开时)。我不确定是否有办法设置这个,因为没有为此设置组件?

2 个答案:

答案 0 :(得分:1)

它目前不受支持,是一个已知问题:https://github.com/angular-ui/bootstrap/issues/1114。应该有code fix这样做。

答案 1 :(得分:0)

恕我直言,显示空值的当前时间是该组件的交易破坏者。我无法想象它为什么还没有修好。

但是,这里有一个关于如何不引人注意地解决这个问题的想法。

免责声明:使用以下指令有它的缺点,它不是最漂亮的解决方案,但它是一个黑客,它是一个黑客它运作得很好。

app.directive('inputEmpty', function () {
  return {
    restrict: 'A',
    link: function link(scope, element, attributes) {
      setTimeout(function () {//wait for DOM to load
        var inputs = element.find('input');
        inputs.val('');

        scope.$watch(attributes.inputEmpty, function (val) {
          if (!val) { inputs.val('').change(); }
        });
      });
    }
  };
})

以下是一个示例用法:

<uib-timepicker ng-change="change()" hour-step="1" minute-step="15" show-meridian="true"
  ng-model="value"
  input-empty="value"
></uib-timepicker>