, директивы в angular или просто angular элементе? - PullRequest
1 голос
/ 05 апреля 2020

во время прохождения курса angular тренер сказал, что ng-template является директивой, тогда как angular имеет 3 типа директив-атрибута, структурного и компонентного. Так что я запутался, что именно это такое?

Ответы [ 2 ]

2 голосов
/ 05 апреля 2020
Generally `<ng-template>` is used along with structural directives like( *ngIF, *ngFor etc ), like you can write a if condition like this



<div *ngIf="condition; else elseBlock">
     True Block
    </div>

    <ng-template #elseBlock>
     <div>
      Else block
     </div>
    </ng-template>

<ng-content> is used for content projection. pls find the below example.

<app-new-component>
 <h1>Hey, here is the example code...</h1>
</app-new-component>

Здесь мы размещаем пользовательский код внутри <app-new-component>, теперь мы можем использовать <ng-content> для проецирования этого кода внутри app-new-component. html

app-new -компонент. html быть таким

<div class="header-wrap">
 <ng-content></ng-content>
</div>
2 голосов
/ 05 апреля 2020

Элемент <ng-template> является элементом Angular для рендеринга HTML. Он никогда не отображается напрямую. Фактически, перед рендерингом представления Angular заменяет и его содержимое комментарием.

Официальные документы: https://angular.io/guide/structural-directives#the -ng-template

The ng-content основная директива допускает проекты компонентов, в которых определенные внутренние детали шаблона не скрыты внутри компонента, а вместо этого предоставляются в качестве входных данных, что в некоторых случаях действительно упрощает проект

...