2016-07-14 2 views
1

Я использую Angular 1.5. У меня есть компонент, встроенный в другой компонент, как показано ниже. Проблема в том, что переменная data еще не разрешена при угловых огнях component-child, и поэтому я ничего не получаю. Как подождать, пока переменная будет разрешена до создания дочернего компонента.Дождаться загрузки данных перед созданием экземпляра компонента

HTML

<component-parent> 
    <component-child data="$ctrl.data._id"><\component-child> 
</component-parent> 

JS

this.data = SomeResource.get(); 

ответ

4

Как о нас ing ng-if?

<component-parent> 
    <component-child ng-if="$ctrl.data._id" data="$ctrl.data._id"> </component-child> 
</component-parent> 
+1

И там я искал сложный жизненный цикл! Duh! – Mika

+0

Всегда держите его просто! Рад, что это помогло. – Chanthu

1

Вы можете использовать ngIf отложить составление компонента при загрузке данных:

Somesource.get().then(function(data) { 
    this.makeComponentVisible = true; 
}); 

<component-parent> 
    <component-child ng-if="$ctrl.makeComponentVisible" data="$ctrl.data._id"><\component-child> 
</component-parent> 
Смежные вопросы