2017-06-06 25 views
2

我在Angular 1.5應用程序中使用fullCalendar調度程序。在調度程序呈現後動態設置resourceOrder

我裹成一個指令和指令裏面我有所有屬性配置對象

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」。

任何想法?或者關於如何一次對一列進行資源分類的最佳做法?

回答

1

您可以使用fullCalendar setters and getters設置或獲取fullCalendar選項。

你的情況:

$('#calendar').fullCalendar('option', 'resourceOrder', '-name'); 
+0

的偉大工程。我現在可以刪除解決方法! :D非常感謝! – gmodrogan