TypeError:无法读取属性' bind'未定义的

时间:2018-01-23 10:27:15

标签: angular typescript daterangepicker ngx-bootstrap

在尝试构建角度项目时,我收到以下错误。 我声明了我的变量,以及获取不同日期的方法。

export class AuditComponent implements OnInit {

                minDate: string;
                maxDate: string;
                bsRangeValue: Date[] = [];

                constructor(){}

                ngOnInit() {}

                 getDateRange(evt: any) {
                        this.minDate = moment(this.bsRangeValue[0]).toISOString();
                        this.maxDate = moment(this.bsRangeValue[1]).toISOString();

                        this.auditPage = this.auditService
                            .getAuditEventEntries(0,
                                100,
                                this.userId,
                                this.auditQueryStr,
                                this.minDate,
                                this.maxDate);
                    }

 }

我如何调用日期范围

<li class="custom" (click)="drp.toggle()">
      div>Custom Range <span class="caret icon"></span></div> </li>

模板代码

<input
 bsDaterangepicker
 #drp="bsDaterangepicker"
[(ngModel)]="bsRangeValue"
(ngModelChange)="getDateRange($event)">

AOT ERROR

ERROR TypeError: Cannot read property 'bind' of undefined
    at createClass (app.js?1516703022201:1)
    at createDirectiveInstance (app.js?1516703022201:1)
    at createViewNodes (app.js?1516703022201:1)
    at Object.createEmbeddedView (app.js?1516703022201:1)
    at TemplateRef_.createEmbeddedView (app.js?1516703022201:1)
    at ViewContainerRef_.createEmbeddedView (app.js?1516703022201:1)
    at NgIf._updateView (app.js?1516703022201:1)
    at NgIf.set [as ngIf] (app.js?1516703022201:1)
    at updateProp (app.js?1516703022201:1)
    at checkAndUpdateDirectiveInline (app.js?1516703022201:1)

1 个答案:

答案 0 :(得分:0)

我的猜测是你的bsRangeValue是一个空数组,但它应该包含两个Date值:

例如:https://valor-software.com/ngx-bootstrap/#/datepicker#examples

成分:

import { Component } from '@angular/core';

@Component({
  selector: 'demo-date-picker-popup',
  templateUrl: './date-picker-popup.html'
})
export class DemoDatePickerPopupComponent {
  minDate = new Date(2017, 5, 10);
  maxDate = new Date(2018, 9, 15);

  bsValue: Date = new Date();
  bsRangeValue: any = [new Date(2017, 7, 4), new Date(2017, 7, 20)];
}

模板:

<div class="row">
  <div class="col-xs-12 col-12 col-md-4 form-group">
    <input class="form-control" #drp="bsDaterangepicker" bsDaterangepicker [(ngModel)]="bsRangeValue">
  </div>
  <div class="col-xs-12 col-12 col-md-3 form-group">
    <button class="btn btn-success" (click)="drp.toggle()">Date Range Picker</button>
  </div>
</div>