我正在尝试根据当前视图获取事件。要跟踪“上一个”,“下一个”点击和初始显示视图,我使用CalendarOption viewRender
返回完整视图,并在每次点击时调用自身 - 这会提供新的完整视图。
问题是 - 根据提取的viewRender
视图输出参数,我无法调用我从中获取事件的服务。
constructor (public eventService: EventService)
calendarOptions = {
...
...
eventLimit: true,
viewRender: function(view) {
this.eventService.getEvents(view) // <--- code stops here, error printed at bottom
.subscribe(
response => {
this.events = response.events;
},
error => {
console.log(error)
}
);
console.log(this.events);
},
events: this.events,
...
...
}
我期待我的服务能够在这种情况下触发工作 - 在日历上首次初始化并且每次点击“上一个”/“下一个”按钮
目前,输出是
错误TypeError:无法读取未定义的属性'getEvents'
我可以通过其他方式调用此外部命令吗? 我也尝试过直接使用httpClient,但HTTP也是一种无法访问的服务
答案 0 :(得分:0)
现在已经解决了
通过附加:
来管理以访问我的服务 const eventService = this.eventService;
这里:
initCalendar() {
const eventService = this.eventService;
var events = []
this.calendarOptions = {
...
...
viewRender: function(view) {
eventService.getEvents(view) // <----- Not accessing with 'this' anymore
.subscribe(
response => {
events = response.events;
},
error => {
console.log(error)
}
);
},
events: events;
...
...
}
}