gpt4 book ai didi

javascript - Angularjs 完整日历不显示事件

转载 作者:行者123 更新时间:2023-11-28 11:34:33 26 4
gpt4 key购买 nike

我正在使用https://github.com/angular-ui/ui-calendar在 Angularjs 中使用 FullCalendar。

它显示日历并且没有显示错误;

<div class="calendar" ng-model="eventSources" id="eventCalendar" calendar="calendar" config="uiConfig.calendar" ui-calendar="uiConfig.calendar"></div>

但它不会显示事件,我不确定我做得是否正确,但它没有显示错误,我通过互联网搜索,但尚未找到解决方案。有人能给我提示为什么它不起作用吗?

这是代码片段:

var calApp = angular.module('usercalapp', ['ui.bootstrap','dialogs','ngCookies','ui.calendar']);

calApp.controller('UserCtrl', function ($scope, $http, $rootScope, $timeout,,$dialogs,$cookieStore,$compile,uiCalendarConfig)
{
$scope.eventSources = [];
$scope.calendar = $('#calendar');

$scope.uiConfig = {
calendar : {
height: 450,
editable: true,
header: {
left: 'month basicWeek basicDay',
center: 'title',
right: 'today prev, next'
},
dayClick: $scope.alertEventOnClick,
eventDrop: $scope.alertOnDrop,
eventResize: $scope.alertOnSize
}
};

$scope.cal_func = function()
{
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();

$scope.eventSources = [
{
title: 'All Day Test Event',
start: new Date(y, m, 1)
},
{
title: 'Long Test Event',
start: new Date(y, m, d - 5),
end: new Date(y, m, d - 2)
},
{
title: 'Test Birthday Party',
start: new Date(y, m, d + 1, 19, 0),
end: new Date(y, m, d + 1, 22, 30),
allDay: false
}];

$scope.calendar.fullCalendar('refetchEvents');
};

$scope.showColorPicker = function(index)
{
$cookieStore.showuserid = index;
dlg = $dialogs.create('/dialogs/pickColor.html','pickColorCtrl',{},{key:false ,back:'static'});

dlg.result.then(function()
{
$scope.cal_func();
});
};

....

所以我希望用户选择一种颜色,然后日历中应该显示 3 个事件,但什么也没有发生...

最佳答案

在这里,您已在 eventSources 中直接输入了事件。

您应该做的是提供存储事件的数组列表。像这样的东西:$scope.eventSources = [$scope.myEvents, $scope.someOtherArray, $scope.otherEvents];

$scope.myEvents中,您可以放置​​您的事件。

$scope.myEvents = [
{
title: 'All Day Test Event',
start: new Date(y, m, 1)
},
{
title: 'Long Test Event',
start: new Date(y, m, d - 5),
end: new Date(y, m, d - 2)
},
{
title: 'Test Birthday Party',
start: new Date(y, m, d + 1, 19, 0),
end: new Date(y, m, d + 1, 22, 30),
allDay: false
}
];

$scope.someOtherArray, $scope.otherEvents 可以是其他一些事件源。

就颜色而言,您可以通过 events object 进行自定义。或event source object

$scope.someOtherArray = [];
$scope.weeklyEvents = {
color: '#656565',
textColor: 'white',
events: []
};
$scope.otherEvents = {
color: '#B2B2B2',
textColor: 'black',
events: []
};

您可以修改代码以使用上述两种方法之一(访问这些链接)。

关于javascript - Angularjs 完整日历不显示事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27380314/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com