【发布时间】:2017-09-17 07:10:18
【问题描述】:
我在这里遇到了很大的问题,我正在尝试在使用同步点更改视图时加载事件。更改同步点效果很好,我还可以发送和接收信息。但是日历仍然冻结,我必须更改几个月才能再次开始工作。然后我可以回到上个月。
我正在使用 AngularJS 加载事件,并使用 $q 在请求之前加载数据:
$q(function(resolve, reject) {
resolve(beforeSendStatus());
}).then(function() {
EventService.get({
start: moment(start).format("DD-MM-YYYY"),
end: moment(end).format("DD-MM-YYYY"),
format: 'FC',
onlyMe: false
}).then(function(data) {
$('.status').find('i').removeClass("fa-spin fa-circle-o-notch").addClass('fa-check');
//TODO trouver un autre moyen que le addEventSource, ca fait bugger le calendrier.
Calendar.fullCalendar('renderEvents', data.data);
console.log('revenue bouge esti');
eventLenghtCalc(view, 325);
console.log('yes');
}, function(error) {
$('.status').find('i').removeClass("fa-spin fa-circle-o-notch").addClass('fa-close').css({
'color': 'red'
});
toastr.error(error.data);
});
})
如果我删除带有$q的部分,它会很好地工作。
你们中有人在 viewRender 回调中遇到过异步函数的问题吗?
谢谢,祝你有美好的一天!
ps。 beforeSendStatus() 函数仅更改微调器的图标。
【问题讨论】:
-
可以分享 beforeSendStatus() 的代码吗?
-
这与 fullCalendar 代码有什么关系?这个例子在“viewRender”回调中吗?通常,fullCalendar 会在视图更改时自动刷新事件列表,假设您已将事件列表定义为 URL 或函数。我认为我们需要更多关于如何设置日历的背景信息。
-
如何填充日历?
标签: javascript jquery angularjs asynchronous fullcalendar