Javascript 在FullCalendar开始渲染之前使用webservice

Javascript 在FullCalendar开始渲染之前使用webservice,javascript,angularjs,fullcalendar,Javascript,Angularjs,Fullcalendar,我正在使用FullCalendar内置方法viewRender以以下方式加载包含月份内容的Web服务: $scope.viewRender = function (view, element) { $("td").removeClass("fc-today"); $("td").removeClass("fc-state-highlight"); var currentMonth = view.intervalEnd._d.getMonth(); var cur

我正在使用FullCalendar内置方法viewRender以以下方式加载包含月份内容的Web服务:

$scope.viewRender = function (view, element) {
    $("td").removeClass("fc-today");
    $("td").removeClass("fc-state-highlight");

    var currentMonth = view.intervalEnd._d.getMonth();
    var currentYear = view.intervalEnd._d.getFullYear();

    ScheduleAttendanceSrvc.getCalendar(1, currentMonth, currentYear).then(
        function (calData) {
            window.calData = calData;
        },
        function (statusCode) {
            toastr.warning("Calendar Data doesn't exist.");
        }
    )
}
$scope.dayRender = function (date, cell) {
    var formattedDate = date._d.toISOString().slice(0, 10);

    if (($.inArray(formattedDate, window.calData)) > -1) {
        cell.context.bgColor = '#0aa699';
    } else {
        cell.context.bgColor = '#f35958';
    }
};
我正在使用FullCalendar内置方法dayRender,通过以下方式自定义FullCalendar的外观:

$scope.viewRender = function (view, element) {
    $("td").removeClass("fc-today");
    $("td").removeClass("fc-state-highlight");

    var currentMonth = view.intervalEnd._d.getMonth();
    var currentYear = view.intervalEnd._d.getFullYear();

    ScheduleAttendanceSrvc.getCalendar(1, currentMonth, currentYear).then(
        function (calData) {
            window.calData = calData;
        },
        function (statusCode) {
            toastr.warning("Calendar Data doesn't exist.");
        }
    )
}
$scope.dayRender = function (date, cell) {
    var formattedDate = date._d.toISOString().slice(0, 10);

    if (($.inArray(formattedDate, window.calData)) > -1) {
        cell.context.bgColor = '#0aa699';
    } else {
        cell.context.bgColor = '#f35958';
    }
};
问题是我不能保证viewRender总是比all dayRender先运行。实际上,“视图渲染”在所有DayRender之间运行。有没有更好的方法在dayRender运行之前加载我的Web服务,因为我依赖我的Web服务返回来定制它的外观

非常感谢