简体   繁体   English

使用showTime选择日期后如何隐藏PrimeNG日历

[英]How to hide PrimeNG Calendar after date selection with showTime is true

I am facing issue with PrimeNG Calendar. 我面临PrimeNG日历的问题。 I have searched lot but not find any clue and this question already asked in StackOverflow but not proper answer given. 我已经搜索了很多,但是没有找到任何线索,并且这个问题已经在StackOverflow中问过了,但是给出的答案不正确。

When I select date after that calendar is not hide. 当我选择日期后,该日历不会隐藏。

my html code: 我的html代码:

<p-calendar [monthNavigator]="true" [yearNavigator]="true" yearRange="1910:2020" showButtonBar="true"  hideOnDateTimeSelect="true" showTime="true" dateFormat="mm-dd-yyyy"
              placeholder="mm-dd-yyyy"  [minDate]="yesterday" formControlName="Start"  class="pull-left">
            </p-calendar>

and just bind formControl Start with this calendar. 并绑定formControl从此日历开始。

Please, help me to solve this issue. 请帮我解决这个问题。

you have to make below changes it will work for you, 您必须进行以下更改才能为您工作,

in your component, import ViewChild from @angular/core and Calendar from primeng/primeng 在您的组件中,从@ angular / core导入ViewChild,从primeng / primeng导入Calendar

@ViewChild('myStartCalendar') startCalendar: Calendar;

ngOnInit() {
    this.calendarOnDateSelectHandler = this.startCalendar.onDateSelect;
    this.startCalendar.onDateSelect = ((event: any, dateMeta: any) => { 
    this.onStartDateSelectExtention(event, dateMeta); });
 }

private onStartDateSelectExtention(event: any, dateMeta: any): void {
    this.calendarOnDateSelectHandler.call(this.startCalendar, event, dateMeta);
    if (this.startCalendar.isSingleSelection()) {
        this.startCalendar.overlayVisible = false;
    }
}

then put the myStartCalendar in your primeng calendar in html as like below code: 然后将myStartCalendar放入html的primng日历中,如以下代码所示:

<p-calendar #myStartCalendar [monthNavigator]="true" [yearNavigator]="true" yearRange="1910:2020" showButtonBar="true"  hideOnDateTimeSelect="true" showTime="true" dateFormat="mm-dd-yyyy"
           placeholder="mm-dd-yyyy"  [minDate]="yesterday" formControlName="Start"  class="pull-left">
</p-calendar>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM