2016-09-30 3 views
0

У меня есть сайт, на котором должен быть загружен диалог настроек, если нажать на кнопку. Диалог настроек - это компонент, который загружает данные из конечных точек REST. Я не хочу вставлять компонент и просто скрывать его, так как я хочу сохранить ресурсы. Каков правильный Угловой способ 2?Load Angular 2 component to area

+0

Пожалуйста, добавьте код, который демонстрирует то, что вы пытаетесь выполнить. Что значит «загружено в определенной области» точно, а также что означает «нагрузка»? –

ответ

0

Вы можете использовать ngIf для такого рода целей, он будет вставить элемент, только если условие истинно

<div *ngIf="condition"> 
    <!-- Content present in DOM only if condition == true --> 
</div> 

Таким образом, ваши данные не будут загружены во время выполнения, но когда компонент вставляется (=>, когда условие становится истинным).

EDIT: загрузить на основе shouldBeLoaded, затем показать/скрыть на основе shouldBeDisplayed; когда shouldBeLoaded установлено значение истинно, то его значение не должно изменяться

<component *ngIf="shouldBeLoaded" *ngShow="shouldBeDisplayed"> 
</component> 
+0

Перезагружает ли этот компонент, когда я скрываю его и снова показываю? – Johni

+0

Да, вы можете использовать вторую переменную с 'ngShow', чтобы только скрывать/показывать компонент при загрузке; я редактировал сообщение с примером –

0

Существует 2 способа сделать это:

  1. <div [hidden]="condition"> content </div> это создаст content, но скрыть его, когда condition является true

  2. <div *ngIf="condition"> content </div> он создаст content, если condition это правда, в противном случае это не будет

Смежные вопросы