我在Angular 1.5应用程序中使用fullCalendar Scheduler。
我把它包装成一个指令,在指令里面我有一个包含所有属性的配置对象
var calendarConfig = {
schedulerLicenseKey: '----------------------------',
resources: function (callback) {
scope.getResources()(callback);
},
resourceColumns: [
{
labelText: 'Name',
field: 'name'
},
{
labelText: 'Id',
field: 'id',
width: "85px"
}
],
resourceOrder: "name",
defaultView: "timelineMonth",
resourceLabelText: "Test",
resourceAreaWidth: "17%",
aspectRatio: '100%',
header: {
left: 'reorderBtn',
center: 'title',
right: 'prev next'
},
customButtons: {
sortName: {
text: 'reorderBtn',
click: function (oEvent) {
---------- how to perform the reordering inside here ? ----
}
}
},
eventClick: eventClick,
dayClick: dayClick,
viewRender: viewRender,
weekNumbers: true,
};
我注意到调度程序有一个名为“resourceOrder”的属性,它在初始化时效果很好。
我的用例是当我按下按钮时,我希望看到按名称降序排序的资源。
我尝试使用
$(element).fullCalendar('getView').options.resourceOrder = "-name"
$(element).fullCalendar('render')
但它不起作用。
我可以手动对指令外部的资源进行排序,然后再次将已排序的资源重置为源,但我想避免这种情况,并使用调度程序提供的nice属性“resourceOrder”。
有什么想法吗?或者关于如何一次按一列排序资源的任何最佳实践?
答案 0 :(得分:1)
您可以使用fullCalendar setters and getters动态设置或获取fullCalendar选项。
在你的情况下:
$('#calendar').fullCalendar('option', 'resourceOrder', '-name');