Usando o escopo de solicitaçãoVariáveis dentro de tags personalizadas existe no seu próprio espaço variável, a única maneira de compartilhar dados e para trás entre a página e chamar a tag personalizada é usando os atributos e escopos de chamadas. Solicitar variáveis estão disponíveis para todos os modelos de um pedido, incluindo tags personalizados, e são a melhor maneira de dar acesso personalizado tags para variáveis globais, como Request.MainDSN, Request.Username e Request.Password. Geralmente, você deve restringir o uso de Pedidos âmbito variáveis em etiquetas personalizadas para constantes globais, tais como estes. Todos os outros dados necessários para uma marca personalizada devem ser passados a ele através de atributos. As funções podem, tags personalizados podem ser chamada recursivamente. Isso é raro, porém, e geralmente em escala avançada, porque a recursividade no tags personalizadas é usado de forma diferente em funções definidas pelo usuário. Porque UDFs são mais adequados para fazer cálculos, você encontra mais de recursão numéricos em UDFs. Por outro lado, a recursão no tags personalizadas é mais adequada para procedimentos como recursivo capotagem ou hierarquias de diretório, onde o objetivo é a saída de página em vez de retornar resultados individuais de cada chamada recursiva. O código mostra uma marca personalizada que utiliza um caminho de diretório e retorna uma lista de todos os arquivos e subpastas desse caminho. Ele utiliza a recursividade para listar o conteúdo dos subdiretórios também.
O teste CFIF para "GetFiles.Name NEQ". "E GetFiles.Name NEQ ".."" não é necessário em ColdFusion MX, MX porque não retorna esses valores. Mantivemos o teste neste anúncio para compatibilidade com ColdFusion 5. ListDir.cfm usa CFDIRECTORY para obter todos os arquivos e subpastas do diretório passado para a marca. Em seguida, loops sobre a lista de arquivos e diretórios e saídas de cada arquivo que ele encontra. Sempre que o assinante encontra um diretório, ListDir.cfm chama a si mesmo recursivamente, passando o nome do novo diretório. Chamamos ListDir.cfm em nossos sistemas, utilizando o seguinte: CFABORT é mencionado como uma forma de interromper imediatamente a execução de uma solicitação. Dentro de uma tag personalizada, você raramente quer terminar um pedido inteira, mas você pode querer acabar com a execução da marca e retornar à página de chamada. CFEXIT Uma chamada para o seguinte aspecto: Você tem as seguintes três valores possíveis para o método: ExitTag: Continua a execução após a tag de fechamento. ExitTemplate: Continua a execução ou após a abertura ou a tag de fechamento, dependendo de onde ele é chamado. Loop: Re-executa o corpo da tag personalizado. ExitTag pára a marca atual, o que significa que a execução continua depois da tag de fechamento (ou marca a abertura se você não tem tag de fechamento). Os códigos revelam uma marca personalizada e sua página de chamada.
Running MyTagCall.cfm produz o seguinte: Este é o conteúdo da tag de abertura. Este é o conteúdo após a tag de fechamento. Chamando CFEXIT imediatamente salta tag de fechamento do passado, assim ColdFusion ignora toda a produção extra na marca e chamando página. ExitTemplate é semelhante ao ExitTag, na verdade, é diferente se você chamá-lo no modo de iniciar. Invés de retirar a etiqueta, ExitTag salta após o fim do modelo actual, em outras palavras, chamando ExitTemplate no modo de iniciar imediatamente começa a execução o corpo sim. Por outro lado, ExitTemplate chamada no modo de Fim imediatamente termina a tag personalizada.
Chamando o código agora mostra o seguinte resultado: Este é o conteúdo da tag de abertura. Este é o conteúdo de marca. Este é o teor de tag de fechamento. Este é o conteúdo após a tag de fechamento. ExitTemplate ignora o fim do modo anteriormente, mas continua a execução, no início do corpo. Loop é muito diferente da ExitTag e ExitTemplate porque Loop executa o código que já está executado. Ao invés de ignorar parte do passado da marca, re-Loop executa o corpo da tag personalizado. Como tal, pode ser chamado somente no modo de final da marca personalizada. Loop é utilizada com muito menos freqüência do que ExitTag ou ExitTemplate e é utilizado quase exclusivamente com marcas aninhadas. As alterações a estes dois tags exigir uma mudança na arquitetura da etiqueta. Nos códigos, OutputTable.cfm fez a maior parte do trabalho, e OutputColumn.cfm acabou de definir as colunas a escolha do banco de dados e saída da linha de cabeçalho para o anúncio. As modificações que você vai fazer na lista a seguir fazer OutputTable.cfm obter os dados do banco de dados, mas o trabalho de reproduzir os dados na maior parte cai sobre OutputColumn.cfm, que é uma melhor divisão do trabalho. Os códigos de mostrar o modificações OutputTable.cfm e OutputColumn.cfm.
Observe como estas listas são usando variáveis Pedido? Você usa variáveis Pedido para se comunicar e para trás entre o modo de a marca final do pai e da criança tags aninhadas, que é uma outra utilização aceitável deles. Você também pode fazer isso usando CFASSOCIATE e GetBaseTagData (), mas isso seria mais complicado. um artigo submetido por Greg Hunter Isenção de responsabilidade:O nosso site não se responsabiliza pelo conteúdo deste artigo. Webarticles é uma fonte de informação livre. Importante: Este artigo "Usando o escopo de solicitação" foi traduzida por um software automático. Nós sentimos muito por quaisquer erros de ortografia que pode ter ocorrido. Obrigado pela sua compreensão.
|
|||||||
| Online: 334 users browsing the articles directory |
|
|