Mit dem Request ScopeVariablen innerhalb von Custom Tags gibt es in ihren eigenen variablen Raum, und die einzige Möglichkeit, Daten gemeinsam zu nutzen hin und her zwischen der aufrufenden Seite und die benutzerdefinierte Tag ist, indem Sie die Attribute und Anrufer-Bereiche. Request-Variablen sind für alle Vorlagen in einem Antrag, einschließlich der Custom Tags, und sind der beste Weg, um benutzerdefinierte Tags Zugriff auf globale Variablen wie Request.MainDSN, Request.Username und Request.Password geben. Sie sollten in der Regel beschränken Ihre Nutzung der Request-Scope Variablen in Ihren eigenen Tags zu globalen Konstanten wie wie diese. Alle anderen Daten durch ein eigenes Tag benötigt werden sollte, um es über Attribute übergeben. Wie können Funktionen können benutzerdefinierte Tags rekursiv aufgerufen. Dies ist jedoch selten, und in der Regel auf eine erweiterte Skala, weil Rekursion in benutzerdefinierten Tags anders ist als in Benutzer Funktionen verwendet. Da UDFs mehr zu machen Berechnungen geeignet sind, finden Sie mehrere numerische Rekursion in SEF. Auf der anderen Seite ist die Rekursion in benutzerdefinierten Etiketten am besten für solche Verfahren als rekursiv über die Strukturen oder das Verzeichnis Hierarchien, geeignet, bei denen der Zweck Seite ausgegeben wird und nicht wieder einzelne Ergebnisse aus jedem rekursiven Aufruf. Der Code zeigt ein eigenes Tag, dass ein Verzeichnis-Pfad nimmt und eine Liste aller Dateien und Unterordner des Weges. Es verwendet Rekursion, um den Inhalt von Unterverzeichnissen, sowie Liste.
Die CFIF Test für "GetFiles.Name NEQ". "UND GetFiles.Name NEQ ".."" ist nicht notwendig, in ColdFusion MX, MX, weil nicht mehr gibt diese Werte. Wir hielten die in diesem Inserat für die Abwärtskompatibilität mit ColdFusion 5. ListDir.cfm verwendet CFDIRECTORY, um alle Dateien und Unterordner des Verzeichnisses, in dem Tag überholt zu werden. Dann läuft sie über die Liste von Dateien und Verzeichnissen und Ausgänge jede Datei, die es findet. Wenn die Schleife Begegnungen ein Verzeichnis, fordert ListDir.cfm sich rekursiv, übergeben Sie den Namen des neuen Verzeichnisses. Wir nannten ListDir.cfm auf unseren Systemen unter Verwendung der folgenden: CFABORT ist als eine Möglichkeit auf, unverzüglich einen Antrag Hinrichtung erwähnt. Innen ein eigenes Tag, Sie wollen nur selten ein ganzes Anforderung zu beenden, aber Sie möchten für die Ausführung von dem Tag und zurück an die aufrufende Seite Ende. Ein Aufruf von CFEXIT sieht wie folgt aus: Sie haben die folgenden drei möglichen Werte für Methode: ExitTag: Lebensläufe der Ausführung nach dem schließenden Tag. ExitTemplate: Lebensläufe nach Ausführung entweder das Öffnen oder Schließen Tag, je nachdem, wo sie aufgerufen wird. Loop: Re-führt dem Körper des benutzerdefinierten Tag. ExitTag hält die aktuelle Tag, dh die Ausführung auch nach dem Schluss-Tag (oder das Öffnungs-Tag, wenn Sie keine schließenden Tag haben). Die Codes zeigen, ein eigenes Tag und die aufrufende Seite.
Running MyTagCall.cfm erzeugt die folgende: Dies ist der erste Tag Inhalten. Dies ist Inhalt nach dem schließenden Tag. Calling CFEXIT springt sofort vorbei an den End-Tag, so dass ColdFusion überspringt alle die zusätzliche Produktion in den Tag und aufrufende Seite. ExitTemplate ähnelt ExitTag, in der Tat, es sich nur, wenn du es nennst im Start-Modus. Anstatt beim Austritt aus dem Tag, ExitTag springt über das Ende der aktuellen Vorlage, mit anderen Worten, fordern ExitTemplate im Start-Modus beginnt sofort mit der Ausführung dem Tag Körper. Auf der anderen Seite fordern ExitTemplate in der End-Modus sofort beendet den benutzerdefinierten Tag.
Der Aufruf der Code zeigt jetzt die folgende Ausgabe: Dies ist der erste Tag Inhalten. Dies ist der Tag Inhalten. Dies ist das schließende Tag Inhalten. Dies ist Inhalt nach dem schließenden Tag. ExitTemplate überspringt das Ende der Start-Modus, sondern setzt die Ausführung zu Beginn des Körpers. Loop ist sehr verschieden von ExitTag und ExitTemplate weil Loop-Code, der bereits ausgeführt wird ausgeführt. Anstatt das Überspringen Vergangenheit zu einem Teil mit dem Tag, Loop wieder ausgeführt wird der Körper des benutzerdefinierten Tag. Als solche kann sie nur in den End-Modus des benutzerdefinierten Tag aufgerufen. Werden Loop ist viel seltener als ExitTag oder ExitTemplate und ist fast ausschließlich mit verschachtelten Tags verwendet werden. Die Änderungen an diesen beiden Tags eine Änderung in der Architektur des Tags. In den Leitlinien, hat OutputTable.cfm die meiste Arbeit und OutputColumn.cfm soeben definiert die Spalten aus der Datenbank und Ausgabe der Kopfzeile der Liste auszuwählen. Die Änderungen, die Sie gehen in den folgenden Inserate make OutputTable.cfm nutzen Sie die Daten aus der Datenbank, sondern die Arbeit der Ausgabe der Daten im Wesentlichen fällt auf OutputColumn.cfm, die eine bessere Arbeitsteilung ist. Die Codes zeigen die Änderungen an OutputTable.cfm und OutputColumn.cfm.
Beachten Sie, dass diese Listen verwenden Request-Variablen? Sie verwenden Request-Variablen hin und her zwischen dem Ende der Muttergesellschaft Tag-Modus und die verschachtelte Kind-Tags, die eine andere akzeptable Nutzung von ihnen zu kommunizieren. Außerdem können Sie dies tun, indem Sie CFASSOCIATE und GetBaseTagData (), aber damit wäre komplizierter. Ein Artikel eingereicht von Greg Hunter Disclaimer:Unsere Website ist nicht verantwortlich für den Inhalt dieses Artikels. Webarticles ist eine kostenlose Informationsquelle. Wichtig: Dieser Artikel "Verwenden des Request Scope" wurde durch ein automatisches Software übersetzt. Wir fühlen uns leid für alle Rechtschreibfehler, die möglicherweise aufgetreten sind. Vielen Dank für Ihr Verständnis.
|
|||||||
| Online: 259 users browsing the articles directory |
|
|