ng2 – Разница между тегами ng-container и ng-template
Может ли кто-нибудь проиллюстрировать разницу между использованием элементов и
?
Я не мог найти документацию для NgContainer
и не совсем понимаю разницу между тегом шаблона.
Пример кода каждого из них очень поможет.
- Запускать функцию controllerа всякий раз, когда открывается или отображается вид
- Как определить, как пользователь перемещается обратно в Angular2?
- Запрос Firebase, если дочерний элемент дочернего элемента содержит значение
- Что альтернатива угловым.копиям в угловом
- Может ли ng-контент использоваться внутри ngFor?
- Угловое - задайте заголовки для каждого запроса
- Просмотр не обновляется при изменении в Angular2
- Угловое redirect на страницу входа в систему
- Как динамически добавлять и удалять поля формы в Angular 2
- Не удается прочитать свойство «push» неопределенного (...) в угловом2
- Повторите элемент HTML несколько раз, используя ngFor на основе числа
- Угловой 2 «Компонент-имя» кармы не является известным элементом
- Обработка 401s по всему миру с помощью углового
Оба они на данный момент (2.x, 4.x) используются для группировки элементов вместе без необходимости вводить другой элемент, который будет отображаться на странице (например, div
или span
).
template
, однако, требует неприятного синтаксиса. Например,
...
станет
...
Вы можете использовать ng-container
вместо того, чтобы следовать синтаксису nice *
который вы ожидаете и, вероятно, уже знакомы.
...
Вы можете найти более подробную информацию, прочитав эту дискуссию о GitHub .
Обратите внимание, что в 4.x устарела и изменена на
.
использование
-
если вам нужен вспомогательный элемент для вложенных структурных директив, таких как*ngIf
или*ngFor
или если вы хотите обернуть более одного элемента внутри такой структурной директивы; -
если вам нужен fragment представления, который вы хотите штамповать в разных местах, используяngForTemplate
,ngTemplateOutlet
илиcreateEmbeddedView()
.
ng-template используется для структурной директивы типа ng-if, ng-for и ng-switch. Если вы используете его без структурной директивы, ничего не происходит и делает.
ng-container используется, когда у вас нет подходящей оболочки или родительского контейнера. В большинстве случаев мы используем div или span в качестве контейнера, но в таких случаях, когда вы хотите использовать несколько структурных директив, но вы не можете использовать более чем одну структурную директиву для элемента, в этом случае можно использовать ng-контейнер как контейнер
ng-template
как следует из названия, обозначает шаблон . Сам по себе он ничего не делает. Мы можем использовать ng-container
чтобы предоставить местозаполнитель для динамического отображения шаблона.
Другой пример использования для ng-template
заключается в том, что мы можем использовать его для объединения нескольких структурных директив. В этом блоге вы можете найти отличные примеры: угловой ng-template / ng-container