- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 angularjs 中使用完整的日历插件。 https://github.com/angular-ui/ui-calendar
将多个数组提供给完整日历的 eventSource。
$scope.eventSources = [$scope.list1, $scope.List2, $scope.List3];
检查 eventRender 函数内部时;才知道它执行了超过 5K 次,它也影响了我的页面速度。
那么是否有可能在不超过 list1、2 和 3 的总数的情况下执行 eventRender 函数?
我尝试了 eventAfterRender,但它没有按预期工作。
如有任何帮助,我们将不胜感激。
已编辑:下面是我的 Angular Controller 代码。我将事件数组更改为局部变量,而不是单独给出 3 个列表,而是将项目推送到单个数组中并将其分配给 eventSources。
列表中的总记录 = 90
(function () {
'use strict';
//Define controller signature
angular.module("ERPApp.Controllers")
.controller("DashboardCtrl", [
"$scope", "$rootScope", "$timeout", "DashboardService", "$http", "$filter", "$compile","$q",
dashboardCtrl
]);
//Main controller function
function dashboardCtrl($scope, $rootScope, $timeout, DashboardService, $http, $filter, $compile, $q) {
var events = [];
$scope.leaves = [];
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
$scope.FixedColorList = [{ text: 'Half Day', colorCode: '#F6BB43' }, { text: 'Full Day', colorCode: '#4B89DC' },
{ text: 'Approved', colorCode: '#8DC153' }, { text: 'DisApproved', colorCode: '#E9573E' }];
$scope.changeTo = 'Hungarian';
/* Change View */
$scope.changeView = function (view, calendar) {
calendar.fullCalendar('changeView', view);
};
/* Change View */
$scope.renderCalender = function (calendar) {
calendar.fullCalendar('render');
};
/* event source that contains custom events on the scope */
$scope.LoadEvents = function () {
$rootScope.IsAjaxLoading = true;
DashboardService.GetCalendarLeaveList().then(function (result) {
if (result.data.IsValidUser) {
if (result.data.MessageType == 1) {
events.length = 0; //empty event array
ProcessLeave(result.data.DataList, function () {
$scope.LoadFestivalList().then(function (result) {
ProcessFestival(result, function () {
});
});
});
} else {
toastr.error(result.data.Message, 'Opps, Something went wrong');
}
} else {
$rootScope.redirectToLogin();
}
$rootScope.IsAjaxLoading = false;
});
};
$scope.LoadEvents();
/*load festival list*/
$scope.LoadFestivalList = function () {
return DashboardService.GetFestivalList();
};
function ProcessLeave(arrayList, callback) {
var prom = [];
angular.forEach(arrayList, function (value, key) {
var colorCode = value.Status == "Approved" ? $scope.FixedColorList[2].colorCode
: value.Status == "DisApproved" ? $scope.FixedColorList[3].colorCode
: value.PartFullTime == "F" ? $scope.FixedColorList[1].colorCode
: value.PartFullTime == "P" ? $scope.FixedColorList[0].colorCode
: "#000"; // default value
prom.push(events.push({
start: value.StartDate,
color: colorCode,
leave: true
}));
$scope.leaves.push($filter('date')(value.StartDate, 'dd-MM-yyyy'));
});
$q.all(prom).then(function () {
callback();
});
}
function ProcessFestival(result, callback) {
var prom = [];
if (result.data.IsValidUser) {
angular.forEach(result.data.DataList, function (value, key) {
if ($scope.leaves.indexOf($filter('date')(value.FestivalDate, 'dd-MM-yyyy')) < 0) {
prom.push(events.push({
start: value.FestivalDate,
color: value.DisplayColorCode,
holiday: value.IsWorkingDay == 0 ? true : false
}));
}
});
$q.all(prom).then(function () {
callback();
});
} else {
$rootScope.redirectToLogin();
}
}
/* config object */
$scope.test = 0;
$scope.uiConfig = {
calendar: {
editable: false,
header: {
left: 'title',
right: 'prev,next'
},
timeFormat: {
'': ''
},
eventRender: function (event, eventElement, monthView) {
$scope.test++;
if (event.holiday) {
$("td[data-date='" + $filter('date')(event.start, "yyyy-MM-dd") + "']").css({ "background-color": event.color, "border": "1px solid #FFFFFF" });
} else if (!event.holiday) {
$("td[data-date='" + $filter('date')(event.start, "yyyy-MM-dd") + "']").css({ "background-color": event.color, "border": "1px solid #FFFFFF" });
} else if (event.leave) {
$("td[data-date='" + $filter('date')(event.start, "yyyy-MM-dd") + "']").css({ "background-color": event.color, "border": "1px solid #FFFFFF" });
}
}
}
};
/* event sources array*/
$scope.eventSources = [events];
};
})();
最佳答案
我也在使用 fullcandar,它按预期工作:每个插入 eventSources 的事件都会在呈现日历时触发 eventRender。
您确定您的日历只呈现一次吗?
您的列表中有多少项?
希望这对您有所帮助,也许您可以发布您的代码示例/plunkr?
问候
关于javascript - Angular : eventRender function is executing so many times in full calendar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22405711/
main.cpp #include "Primes.h" #include int main(){ std::string choose; int num1, num2; w
似乎函数 qwertyInches() 应该可以工作但是当我在 main() 中调用它时它给了我 [Error] called object 'qwertyInches' is not a funct
我无法理解 C++ 语法的工作原理。 #include using namespace std; class Accumulator{ private: int value; public:
在 类中声明 函数成员时,我们可以同时执行这两种操作; Function first; Function() second; 它们之间有什么区别? 最佳答案 Function 代表任意函数: void
“colonna”怎么可能是一个简单的字符串: $('td.' + colonna).css('background-color','#ffddaa'); 可以正确突出显示有趣单元格的背景,并且: $
我正在尝试将网页中的动态参数中继到函数中,然后函数将它们传递给函数内部的调用。比如下面这个简化的代码片段,现在这样,直接传入参数是没有问题的。但是,如何在不为每个可能的 colorbox 参数设置 s
C++ 中是否有一种模式允许您返回一个函数,它返回一个函数本身。例如 std::function func = ...; do { func = func(); } while (func);
我正在将 Windows 程序集移植到 Linux。我有一些代码要移植。我实际上是 linux 中 C 的新手。我知道 C 基础知识是一样的! typedef struct sReader {
我一直在寻找一个很好的解释,所以我很清楚。示例: this.onDeleteHandler(index)}/> 对比 对比 this.nameChangedhandler(event, perso
function(){}.__proto__ === Function.prototype 和 Function.prototype === function(){}.__proto__ 得到不同的结
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function 据说 Propert
VBA 中的函数没有特殊类型。我很难理解如何在 Excel VBA 中将函数作为参数添加到函数中。 我想要完成的是这样的事情: function f(g as function, x as strin
所以我正在尝试制作一个包(我没有在下面包含我的 roxygen2 header ): 我有这个功能: date_from_text % dplyr::mutate(!!name := lubr
尝试从 std::function 派生一个类,对于初学者来说,继承构造函数。这是我的猜测: #include #include using namespace std; template cla
我正在尝试编写一个返回另一个函数的函数。我的目标是编写一个函数,它接受一个对象并返回另一个函数“search”。当我使用键调用搜索函数时,我想从第一个函数中给定的对象返回该键的值。 propertyO
我非常清楚函数式编程技术和命令式编程技术之间的区别。但是现在有一种普遍的趋势是谈论“函数式语言”,这确实让我感到困惑。 当然,像 Haskell 这样的一些语言比 C 等其他语言更欢迎函数式编程。但即
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 已关闭 8 年前。 Improv
我在stackoverflow上查过很多类似的问题,比如call.call 1 , call.call 2 ,但我是新人,无法发表任何评论。我希望我能找到关于 JavaScript 解释器如何执行这些
向 Twilio 发送 SMS 时,Twilio 会向指定的 URL 发送多个请求,以通过 Webhook 提供该 SMS 传送的状态。我想让这个回调异步,所以我开发了一个 Cloud Functio
作为 IaC 的一部分,A 功能应用 ,让我们将其命名为 FuncAppX 是使用 Terraform 部署的,它有一个内置函数。 我需要使用 Terraform 在函数应用程序中访问相同函数的 Ur
我是一名优秀的程序员,十分优秀!