AngularJS UI日历 - 删除事件不会重新呈现事件

时间:2017-08-21 13:27:10

标签: javascript angularjs fullcalendar ui-calendar

我对AngularJS Ui-Calendar

有这个问题

在fullcalendar的select回调函数中,我通过拖动创建事件,事件在添加到我的events数组之后。

创建事件后我想删除其中的一些,因此我添加了一个按钮,删除,即从Ui-CalendarCalendar调用remove函数。功能如下:

function eventRenderFn(event, element, view) {
    element.find(".fc-content").prepend("<button class='closeon btn btn-danger pull-right'>Delete</button>");
    element.find(".closeon").on('click', function() {
        removeEventById(event);
    });
 }

问题是,在我删除某个事件后,即使该事件已从事件数组中删除,该事件仍会显示在日历上

我尝试在remove函数中添加以下代码来重新渲染事件,但这并没有解决我的问题,因为它只是在第一次删除事件时重新渲染。代码如下:

uiCalendarConfig.calendars.myCalendar.fullCalendar('removeEvents');             
uiCalendarConfig.calendars.myCalendar.fullCalendar('addEventSource', $scope.events);

日历看起来像吼叫: enter image description here

我一直试图找到解决该问题的解决方案2天了。

感谢您的时间。

修改

我的删除功能是:

function removeEventById(event) {
    angular.forEach($scope.events, function (value, key) {
        if (event._id === value._id) {
            $scope.remove(key);
        }
    });
}

$ scope.remove(key)的位置是:

$scope.remove = function(index) {
    $scope.events.splice(index, 1);
};

0 个答案:

没有答案