Eu já vi várias perguntas no StackOverflow discutindo a transclusão ng, mas nenhuma explicando em termos leigos o que é.
A descrição na documentação é a seguinte:
Diretiva que marca o ponto de inserção para o DOM transcluído da diretiva-pai mais próxima que usa transclusão.
Isso é bastante confuso. Alguém seria capaz de explicar em termos simples o que a ng-transclude pretende fazer e onde pode ser usada?
angularjs
angularjs-directive
transclusion
Code Whisperer
fonte
fonte
Respostas:
Transclude é uma configuração para dizer ao angular para capturar tudo o que é colocado dentro da diretiva na marcação e usá-lo em algum lugar (Onde realmente
ng-transclude
está) no modelo da diretiva. Leia mais sobre isso na seção Criando uma diretiva que envolve outros elementos na documentação de diretivas .Se você escreve uma diretiva personalizada, usa ng-transclude no modelo de diretiva para marcar o ponto em que deseja inserir o conteúdo do elemento
Se você colocar isso na sua marcação
Apareceria como:
Exemplo completo:
Index.html
jscript.js
Output markup
Visualize:
fonte
transclude
.é um tipo de rendimento, tudo do element.html () é renderizado lá, mas os atributos da diretiva ainda são visíveis no escopo certo.
fonte
yield
parece uma boa analogia.