-->

How to use Bootstrap 3 Datepicker in angular 2

2019-05-03 20:49发布

问题:

I am using Bootstrap 3 in the angular 2. But can't find any helpful demo or examples from online docs.

When I add time picker in the template as following:

<div class='input-group date' id='datetimepicker3'>
    <input type='text' class="form-control" #datePicker [ngModel]="f.ArrivalTime" (blur)="date = datePicker.value" />
      <span class="input-group-addon">
      <span class="glyphicon glyphicon-time"></span>
      </span>
        <script type="text/javascript">
            $(function () {
                $('#datetimepicker3').datetimepicker({
                    format: 'LT'
                });
            });
        </script>
</div>

When I click the time button, there is no response.

回答1:

Script tags are removed from templates. You need to use other means to load the script.

Something like this might work (not tested)

@Component({
  selector: 'some-comp',
  template: `<div #datetimepicker></div>`
})
class SomeComp {
  @ViewChild('datetimepicker') dateTimePicker:ElementRef;
  ngAfterViewInit() {
    $(this.dateTimePicker.nativeElement).datetimepicker({format: 'LT'});
  }
}


回答2:

You could use ui-bootstrap for angular 2.

It is made by the angular team I believe and they provide bootstrap directives for both angular 1 and 2.