In einem Coldfusion-cfc, wie lautet der Bereichsname für Variablen außerhalb einer Funktion?

7

In einer Coldfusion-Komponente / CFC möchte ich einige Variablen korrekt definieren, damit sie für alle enthaltenen Funktionen verfügbar sind, aber von externen Skripten ausgeblendet oder blockiert werden. Wie lautet der Name des Speicherbereichs des cfc? Sind es "Variablen"? Ist das in einer enthaltenen Funktion verfügbar? Ist es von außerhalb des cfc blockiert?

(Beispiele in CF 8)

Seite aufrufen:

%Vor%

myUtils.cfc:

%Vor%

Zusätzliche Best-Practice-Vorschläge sind willkommen. Es ist schon eine ganze Weile her, seit ich das gemacht habe. Vielen Dank im Voraus.

    
Dan Sorensen 17.12.2009, 19:49
quelle

4 Antworten

14

Innerhalb einer ColdFusion-Komponente befinden sich alle öffentlichen Namen im Bereich This und alle privaten Namen im Bereich Variables . Namen können sowohl "normale" Variableneigenschaften als auch "UDF" -Methoden enthalten. Innerhalb einer ColdFusion-Komponente sind die Bereiche This und Variables pro Instanz und werden nicht gemeinsam von Instanzen verwendet.

Außerhalb einer ColdFusion-Komponente können Sie beliebige öffentliche Namen (Namen, die in der Komponente im Bereich This verfügbar wären) mit der Struct-Notation verwenden. Sie dürfen nicht auf private Namen zugreifen.

Der Standardbereich ist immer Variables - innerhalb einer Komponente, außerhalb einer Komponente, innerhalb einer UDF, innerhalb einer Komponentenmethode usw.

Beachten Sie, dass es keinen "Speicherbereich" gibt. Es gibt benannte Bereiche, aber keine Speicherbereiche.

    
yfeldblum 17.12.2009, 20:23
quelle
7

Ja, das ist der Standardbereich für Variablen.

%Vor%

Es ist eine gute Idee, alle Variablen in cffunctions in CFC zu definieren.

Vergessen Sie nicht output="false", es wird eine Menge von Leerzeichen reduzieren, die CF generiert. Normalerweise werde ich access="public" weglassen, da dies die Standardeinstellung ist.

Wenn Sie eine bessere Dokumentation wünschen, wenn andere Benutzer zu Ihrem CFC navigieren, können Sie sogar die Verwendung von

in Betracht ziehen %Vor%     
Henry 17.12.2009 20:18
quelle
2

Ich muss vielleicht meine eigene Frage beantworten, damit ich sie das nächste Mal hier auf StackOverflow finden kann. Ich bin nicht positiv, aber ich denke, so wird es gemacht. (Wie immer sind Korrekturen und Vorschläge willkommen!)

%Vor%

Seite aufrufen:

%Vor%     
Dan Sorensen 17.12.2009 20:09
quelle
1
%Vor%

Seite aufrufen:

%Vor%     
Phillip Senn 19.12.2009 19:30
quelle

Tags und Links