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.
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.
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%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%Tags und Links coldfusion cfc