2017-06-06 2 views
2

Ich verwende den FullCalendar Scheduler in einer Angular 1.5 Anwendung.ResourceOrder dynamisch setzen, nachdem der Scheduler gerendert wurde

ich es in eine Richtlinie eingewickelt und in der Richtlinie Ich habe ein Config-Objekt mit allen Eigenschaften

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, 
}; 

Ich bemerkte, dass Scheduler eine Eigenschaft namens „resourceOrder“ hat, die bei der Initialisierung schön funktioniert.

Mein Anwendungsfall ist, wenn ich den Knopf drücke, möchte ich die Ressourcen sortiert nach dem Namen absteigend sehen.

Ich versuchte

$(element).fullCalendar('getView').options.resourceOrder = "-name" 
$(element).fullCalendar('render') 

zu verwenden, aber es funktioniert nicht.

Ich kann die Ressourcen außerhalb der Direktive manuell sortieren und dann die sortierten Ressourcen wieder als Quelle zurücksetzen, aber ich möchte dies vermeiden und die nette Eigenschaft "resourceOrder" verwenden, die Scheduler bietet.

Irgendwelche Ideen? Oder Best Practices zum Sortieren der Ressourcen nach einer Spalte?

Antwort

1

Sie können FullCalendar-Optionen dynamisch mit FullCalendar setters and getters festlegen oder abrufen.

In Ihrem Fall:

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

funktioniert super. Ich kann den Workaround jetzt entfernen! : D vielen Dank !! – gmodrogan

Verwandte Themen