Wie kann ich eine wiederverwendbare labelFunction für Flex Datagrid erstellen?

8

Ich habe eine Label-Funktion wie:

%Vor%

Was ich in einer Datensäule benutze, indem ich labelFunction verwende.

Das funktioniert gut, wenn mein Datenfeld 'startDate' heißt. Ich möchte diese Funktion generisch machen, damit ich sie überall verwenden kann.

Wie kann ich das tun? Ich denke, ich muss eine Art "Reflexion" verwenden - oder vielleicht sogar einen anderen Ansatz?

    
Simon_Weaver 19.11.2008, 03:55
quelle

3 Antworten

11

Sie können eine andere Funktion definieren, nennen wir sie partial , die einige zusätzliche Argumente an Ihre Funktion bindet:

%Vor%

Dann ändern Sie Ihre Funktion wie folgt:

%Vor%

Beachten Sie, dass ich ein neues Argument mit dem Namen dataField first in der Argumentliste hinzugefügt und alle Verweise auf "startDate" durch dieses Argument ersetzt habe.

Und benutze es so:

%Vor%

Die partial Funktion gibt eine neue Funktion zurück, die die ursprüngliche Funktion mit den Parametern vom Aufruf zu partiell verkettet mit den Parametern zur neuen Funktion aufruft ... Sie bei mir? Eine andere Möglichkeit, dies zu tun, ist, dass es eine neue Funktion zurückgeben kann, bei der N Argumente an bestimmte Werte gebunden sind.

Gehen wir Schritt für Schritt durch:

partial(formatDate, "startDate") gibt eine Funktion zurück, die wie folgt aussieht:

%Vor%

aber die func und boundArgs sind das, was Sie als Argumente an partial übergeben haben, also könnte es so aussehen:

%Vor%

was, wenn es aufgerufen wird, mehr oder weniger dasselbe wie das

ist %Vor%

Tada!

    
Theo 19.11.2008, 08:18
quelle
14

Sie können die Funktion generisch machen, indem Sie das Attribut dataField der Spalte als Schlüssel für Ihr Element verwenden.

%Vor%

-Ben

    
Ben 21.04.2009 17:42
quelle
0

ist hier allgemeiner:

%Vor%

Verwendung (Spark DataGrid)

%Vor%

oder für MX Datagrid

%Vor%

um benutzerdefinierte Datumsformat-Zeichenfolge zu übergeben:

%Vor%

Standard ist ein "MM / TT / JJJJ";

    
Levancho 07.01.2013 18:29
quelle

Tags und Links