Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular &引用;“ng引导”;datepicker在初始选择时返回错误的日期_Angular_Ng Bootstrap_Ngb Datepicker - Fatal编程技术网

Angular &引用;“ng引导”;datepicker在初始选择时返回错误的日期

Angular &引用;“ng引导”;datepicker在初始选择时返回错误的日期,angular,ng-bootstrap,ngb-datepicker,Angular,Ng Bootstrap,Ngb Datepicker,在Angular 8应用程序中,我必须集成两个datepickers,以便从当前日期起12个月内选择两个日期。因此,我选择了从日期到12个月前的日期和从日期到当前日期的日期。这里是代码结构,我用来实现这个特性 请注意:我正在子组件中集成datepicker。 下面是子组件模块代码 @NgModule({ imports: [ BrowserAnimationsModule, CommonModule, RouterModule, FormsMo

在Angular 8应用程序中,我必须集成两个
datepicker
s,以便从当前日期起12个月内选择两个日期。因此,我选择了从日期到12个月前的日期和从日期到当前日期的日期。这里是代码结构,我用来实现这个特性

请注意:我正在子组件中集成datepicker。

下面是子组件
模块
代码

@NgModule({
    imports: [
      BrowserAnimationsModule,
      CommonModule,
      RouterModule,
    FormsModule,
      NgbDatepickerModule,
    ],
    declarations: [
      ...
    ],
    exports: [
      ...
    ]
})
下面是子组件
.ts
代码-

import { NgbDate, NgbCalendar, NgbDateParserFormatter } from '@ng-bootstrap/ng-bootstrap';

export class EmployeeFilterComponent {
  jobFromDate: any;
  jobToDate: any;

  constructor(private calendar: NgbCalendar, public formatter: NgbDateParserFormatter) {
    this.processDateValue();
  }

  private processDateValue(){
    let date = this.calendar.getToday();

    this.jobToDate = date;
    this.jobFromDate = this.calendar.getPrev(date, 'y', 1);
  }

  triggerFromDateFilter(date: NgbDate){
    console.log('from date', date);
  }

  triggerToDateFilter(date: NgbDate){
    console.log('to date', date);
  }
}
<div class="form-group">
  <label>From: </label>
  <input class="form-control" placeholder="yyyy-mm-dd" name="fromdp"
  [(ngModel)]="jobFromDate" (dateSelect)="triggerFromDateFilter($event)"
  ngbDatepicker #fromdate="ngbDatepicker">
  <div class="input-group-append">
    <button class="btn btn-outline-secondary calendar" (click)="fromdate.toggle()" 
    type="button">Click</button>
  </div>
</div>
<div class="form-group">
  <label>To: </label>
  <input class="form-control" placeholder="yyyy-mm-dd" name="todp"
  [(ngModel)]="jobToDate" (dateSelect)="triggerToDateFilter($event)"
  ngbDatepicker #todate="ngbDatepicker">
  <div class="input-group-append">
    <button class="btn btn-outline-secondary calendar" (click)="todate.toggle()" 
    type="button">Click</button>
  </div>
</div>
下面是子组件
.html
代码-

import { NgbDate, NgbCalendar, NgbDateParserFormatter } from '@ng-bootstrap/ng-bootstrap';

export class EmployeeFilterComponent {
  jobFromDate: any;
  jobToDate: any;

  constructor(private calendar: NgbCalendar, public formatter: NgbDateParserFormatter) {
    this.processDateValue();
  }

  private processDateValue(){
    let date = this.calendar.getToday();

    this.jobToDate = date;
    this.jobFromDate = this.calendar.getPrev(date, 'y', 1);
  }

  triggerFromDateFilter(date: NgbDate){
    console.log('from date', date);
  }

  triggerToDateFilter(date: NgbDate){
    console.log('to date', date);
  }
}
<div class="form-group">
  <label>From: </label>
  <input class="form-control" placeholder="yyyy-mm-dd" name="fromdp"
  [(ngModel)]="jobFromDate" (dateSelect)="triggerFromDateFilter($event)"
  ngbDatepicker #fromdate="ngbDatepicker">
  <div class="input-group-append">
    <button class="btn btn-outline-secondary calendar" (click)="fromdate.toggle()" 
    type="button">Click</button>
  </div>
</div>
<div class="form-group">
  <label>To: </label>
  <input class="form-control" placeholder="yyyy-mm-dd" name="todp"
  [(ngModel)]="jobToDate" (dateSelect)="triggerToDateFilter($event)"
  ngbDatepicker #todate="ngbDatepicker">
  <div class="input-group-append">
    <button class="btn btn-outline-secondary calendar" (click)="todate.toggle()" 
    type="button">Click</button>
  </div>
</div>

发件人:
点击
致:
点击
一切正常,包括最初在
日期选择器中选择的是12个月前的日期,以及在
日期选择器中选择的当前日期

但当我从日历中选择日期时,
(dateSelect)
事件不会返回正确的日期
控制台
但在选择两个日期后,它会为两个日期选择器返回适当的日期。 此外,日历月导航不起作用

我搞不懂这个问题