0

在事件拖放之后,AngularJS UI 日历不会更新 $scope.eventSources 数据模型。我需要获取更新的模型,但没有任何效果。

我已经尝试了很多东西,没有任何效果。.

这是我的代码:

    /* config object */
        $scope.uiConfig = {
          calendar:{
            height: 600,
            editable: true,
            header:{
              left: 'month basicWeek basicDay agendaWeek agendaDay',
              center: 'title',
              right: 'today prev,next'
            },
            eventClick: $scope.alertEventOnClick,
            eventDrop: $scope.alertOnDrop,
            eventResize: $scope.alertOnResize,
            eventRender: function (event, element) {

                if (event.HighPriority == 1) {
                   event.className ='highPriority';
                }

            }

          }
        }; 

    /* load events source that contains custom events on the scope */
        $scope.events = agendaFactoryLocalStorage.getAgenda();

        $scope.eventSources = [$scope.events];

$scope.alertOnDrop = function(event, delta, revertFunc, jsEvent, ui, view){
   $scope.alertMessage = ('Event Droped to make dayDelta ' + delta);
    uiCalendarConfig.calendars.exampleCalendar.fullCalendar('removeEvents');
    uiCalendarConfig.calendars.myCalendar.fullCalendar('refetchEvents');
});

$scope.save_agenda = function(){
        agendaFactoryLocalStorage.updateAgenda($scope.eventSources);
}

$scope.save_agenda 仍然发送相同的数据模型,虽然我已经拖放了 1 个事件,但我真的不知道该怎么做,卡住了 3 个小时。$scope.eventSources 加载正确,但是,拖放不会改变模型,只有“事件”变量被更新,但它是独一无二的,我试图将它推入 $scope.eventSources 没有运气

4

1 回答 1

0

好吧,我发现了一些可能会起作用的东西,它在拖动事件后现在可以正确更新 $scope.eventSources:

$scope.alertOnDrop = function(event, delta, revertFunc, jsEvent, ui, view){
                 $scope.alertMessage = ('Event Droped to make dayDelta ' + delta); 
                 $scope.eventSources[0][1].start = event.start.format();
    };

它正在用拖动的日期值更新旧的日期值,我仍然必须每次都获得正确的索引。

于 2019-02-04T16:18:00.860 回答