我在Angular ui-calendar上使用外部事件:
HTML:
<div id='external-events'>
<ul>
<li class='fc-event'>Event 1</li>
<li class='fc-event'>Event 2</li>
<li class='fc-event'>Event 3</li>
</ul>
</div>
<div ui-calendar="uiConfig.calendar" calendar="myCalendar" ng-model="eventSources">
控制器:
$scope.eventSources = [{
events: [],
color: '#428bca',
textColor: 'white',
overlap: false
}]
$scope.uiConfig = {
calendar: {
header: {
left: 'prev,next today',
center: 'title',
right: 'agendaDay,agendaTwoDay,week'
},
defaultView: 'agendaDay',
height: 'auto',
editable: true,
droppable: true,
eventOverlap: false,
allDaySlot: false,
slotDuration: '00:10:00',
snapDuration: '00:05:00',
eventReceive: $scope.eventReceived,
eventDrop: function( event, delta, revertFunc, jsEvent, ui, view ) {
$scope.eventDropped(event, delta);
},
eventClick: $scope.eventClicked
}
};
我希望保存日历上的所有活动。我知道你可以在使用fullCalendar时使用clientEvents:
$('#calendar').fullCalendar('clientEvents');
是否有与ui-calendar相同的内容?我想我问的是用什么语法来访问clientEvents。我想不明白。我尝试的另一个选项是将每个事件推送到$ scope.eventSources [0] .events中,但似乎不必这样做。
答案 0 :(得分:0)
我相信我想出了自己的问题。
我必须在HTML(calendar = myCalendar
)中使用calendar属性的值,并使用uiCalendarConfig引用它。它返回日历上所有事件的数组。我是棱角分明的新手,也不太熟悉指令。
var myCalendar = uiCalendarConfig.calendars.myCalendar
myCalendar.fullCalendar('clientEvents', function(event) {
return event
});