目前我正在尝试实现引导日期选择器,它使用jQuery
,以及我的 Angular2 项目。这是我到目前为止所拥有的:
import {Component, AfterViewInit, Injector, Inject} from '@angular/core';
import {ObservableService} from "../../../services/data-observable.service";
declare var $:any;
@Component({
selector: 'date-range',
moduleId: module.id,
template: `<input name="daterange" class="filter-date-range"/>`
})
export class DateRange implements AfterViewInit {
options = { locale: {
format: 'YYYY-MM-DD'
},
startDate: '2013-01-01',
endDate: '2013-12-31'};
constructor(@Inject(Injector) private injector: Injector,
@Inject(ObservableService) private _observable: ObservableService) { }
ngAfterViewInit() {
$('input[name="daterange"]').daterangepicker(
this.options,
function (start, end) {
let obj = {};
obj['start'] = start;
obj['end'] = end;
this._observable.updateFilter(obj);
}
);
}
}
一切都很完美,除了这段代码
this._observable.updateFilter(obj);
我在这里尝试路径ObservableService
方法调用到daterangepicker
回调函数,每次日期值更改时都会激活该函数。所以,我得到了
Uncaught TypeError: Cannot read property 'updateFilter' of undefined
error.
我如何调用 Angular2 组件、服务或其他内部的方法js
功能?