fullCalendar больше не реализован как плагин jQuery, поэтому вы больше не можете писать $('#calendar').fullCalendar({
.
Вместо этого вы должны ссылаться на переменную calendar
(т. Е. Там, где вы написали var calendar = ...
. Однако, чтобы это работало, вам, возможно, придется расширить ее за пределы обратного вызова DomContentLoaded
.
Кроме того, ваш пример кода пытается повторно объявить весь календарь, когда на самом деле вы просто хотите добавить к нему некоторые события.
Вот версия, которая должна работать правильно:
Часть 1:
<script>
var calendar; //give the calendar variable global scope
document.addEventListener('DOMContentLoaded', function() {
var calendarEl = document.getElementById('calendar');
calendar = new FullCalendar.Calendar(calendarEl, {
plugins: [ 'dayGrid' ]
});
calendar.render();
});
</script>
Часть 2:
myApp.controller('myController', ['$scope', '$window', 'vv', '$http', function ($scope, $window, vv, $http)
{
$scope.displayVal = [];
$scope.addEventVal = function()
{
//code to get values from db
$scope.displayVal.push({start:someVal,end:someValue});
calendar.addEventSource($scope.displayVal); //add some events to the calendar as a new event source
});
}
}]);