Ambito di applicazione utilizzando la RichiestaVariabili all'interno dei tag personalizzati esistenti nel proprio spazio variabile, e l'unico modo per condividere i dati avanti e indietro tra la pagina chiamante e il tag personalizzati è quello di utilizzare gli attributi e gli ambiti del chiamante. Variabili richiesta sono disponibili a tutti i modelli in una richiesta, anche tag personalizzati, e sono il modo migliore per dare accesso tag personalizzati per le variabili globali come Request.MainDSN, Request.Username, e Request.Password. Si consiglia di limitare l'uso dei Richieste portata variabili nel tag personalizzati per le costanti globali quali come questi. Tutti gli altri dati necessari per un tag personalizzato dovrebbe essere passato al via gli attributi. Come le funzioni possono, tag personalizzati può essere chiamato in modo ricorsivo. Questo è raro, tuttavia, e di solito su una scala avanzata, perché la ricorsione in tag personalizzati è usato in modo diverso rispetto a funzioni definite dall'utente. UDF, perché sono più adatta a fare i calcoli, si trova la ricorsione più numerici in UDF. D'altra parte, la ricorsione in tag personalizzati è più adatto per le procedure, come recursing capovolgimento o directory secondo le gerarchie, in cui lo scopo è uscita la pagina, piuttosto che restituire i risultati di ogni singola chiamata ricorsiva. Il codice si presenta con un tag personalizzato che prende un percorso di directory e restituisce un elenco di tutti i file e le sottocartelle di tale percorso. Esso utilizza la ricorsione per elencare il contenuto delle sottodirectory.
La prova CFIF per "GetFiles.Name NEQ". "E GetFiles.Name NEQ ".."" non è necessaria in ColdFusion MX, MX, perché non torna più questi valori. Abbiamo mantenuto la prova in questa lista per la compatibilità con ColdFusion 5. ListDir.cfm utilizza CFDIRECTORY per ottenere tutti i file e sottocartelle della directory passata al tag. E poi loop oltre l'elenco dei file e delle directory e le uscite di tutti i file che trova. Ogni volta che il ciclo di incontri di una directory, ListDir.cfm chiama se stessa ricorsivamente, passando il nome della nuova directory. Abbiamo chiamato ListDir.cfm sui nostri sistemi, utilizzando i seguenti: CFABORT è citato come un modo per interrompere immediatamente l'esecuzione di una richiesta HTTP. All'interno di un tag personalizzato, raramente si desidera terminare una intera richiesta, ma si consiglia di terminare l'esecuzione del tag e tornare alla pagina chiamante. Una chiamata a CFEXIT appare come segue: Hai le seguenti tre valori possibili per il metodo: ExitTag: riprende l'esecuzione dopo il tag di chiusura. ExitTemplate: riprende l'esecuzione dopo che sia l'tag di apertura o di chiusura, a seconda di dove si chiama. Loop: Re-esegue il corpo del tag personalizzati. ExitTag ferma il tag attuale, il che significa che l'esecuzione continua dopo il tag di chiusura (o il tag di apertura se non si ha tag di chiusura). I codici mostrano un tag personalizzato e la sua pagina chiamante.
Running MyTagCall.cfm produce i seguenti: Questo è il contenuto tag di apertura. Questo è il contenuto dopo il tag di chiusura. Chiamando CFEXIT salta immediatamente dopo il tag di chiusura, in modo da ColdFusion salta tutti gli extra in uscita il tag e chiamando pagina. ExitTemplate è simile a ExitTag, infatti, è diverso solo se lo si chiama in modalità di avvio. Invece di uscire il tag, ExitTag salta oltre la fine del modello corrente, in altre parole, chiamando ExitTemplate in modalità di avvio inizia immediatamente l'esecuzione il corpo tag. D'altra parte, chiamando ExitTemplate in modalità Fine termina immediatamente il tag personalizzati.
Chiamando il codice ora mostra il seguente risultato: Questo è il contenuto tag di apertura. Questo è il contenuto tag. Questo è il contenuto tag di chiusura. Questo è il contenuto dopo il tag di chiusura. ExitTemplate salta alla fine della modalità di avvio, ma continua l'esecuzione all'inizio del corpo. Circuito è molto diverso da ExitTag e ExitTemplate perché ciclo viene eseguito il codice che è già eseguito. Piuttosto che saltare una parte del passato, il tag, ri-Loop esegue il corpo del tag personalizzati. Come tale, essa può essere chiamato solo in modalità Fine del tag personalizzati. Loop è utilizzato molto meno spesso di quanto ExitTag o ExitTemplate e viene utilizzato quasi esclusivamente con i tag annidati. Le modifiche a questi due tag richiedono un cambiamento nel campo dell'architettura del tag. Nei codici, OutputTable.cfm ha fatto la maggior parte del lavoro, e OutputColumn.cfm appena definito le colonne per selezionare dal database e di uscita della riga di intestazione per l'inserzione. Le modifiche che hai intenzione di fare le liste in seguito fare OutputTable.cfm ottenere i dati dal database, ma il lavoro di trasmissione dei dati cade soprattutto su OutputColumn.cfm, che è una migliore ripartizione del lavoro. I codici mostrano la modifiche al OutputTable.cfm e OutputColumn.cfm.
Si noti come questi elenchi si utilizza le variabili della richiesta? Si utilizzano le variabili Richiesta per comunicare avanti e indietro tra la modalità del tag genitori End e il tag annidati bambino, che è un altro utilizzo accettabile di loro. È inoltre possibile effettuare questa operazione utilizzando CFASSOCIATE e GetBaseTagData (), ma così facendo sarebbe stato più complicato. un articolo presentato da Greg Hunter Disclaimer:Il nostro sito non è responsabile per il contenuto di questo articolo. Webarticles è una risorsa gratuita di informazioni. Importante: In questo articolo "Utilizzare il scope di request" è stato tradotto da un software automatico. Ci dispiace per eventuali errori di ortografia che possono essersi verificati. Grazie per la vostra comprensione.
|
|||||||
| Online: 284 users browsing the articles directory |
|
|