Angular何时创建组件实例

时间:2017-09-21 05:07:31

标签: angular angular2-template angular2-directives

我是角色的新手,从我学到的文档中我们可以通过引导程序root模块启动角度应用程序,然后angular可以通过创建app component的实例启动应用程序并查找selector中此组件的index.html并放置该根组件的视图, 我的问题是角度是否对所有组件使用相同的策略, 例如,这会在同一时间创建所有组件,还是创建在模板上声明的基于组件的指令。

  

1)我有2个组件,例如app componentnavbar component     2)app组件有<app-navbar></app-navbar> on its template

从我的理解 Angular首先创建root component并将该组件视图粘贴到root component selector(app-root) index.html上,如果该根组件视图有另一个名为app-navbar的选择器,则只创建navbar.component的实例如果我错了,请在selector.correct中粘贴该视图?

2 个答案:

答案 0 :(得分:0)

  

...并在index.html中找到此组件的选择器并将其放入   该根组件的视图

这仅适用于模块装饰器中定义为var res = await api.get('/url/1'); 组件的组件。因此在这里:

  

Angular首先创建根组件

最好使用术语bootstrap组件,因为可能有很多引导程序组件。

  

我有2个组件,例如app组件,navbar组件

Angular编译器将生成两个工厂。在此过程中,它将遇到bootstrap并创建适当的视图节点。当Angular创建视图时,它将为<app-navbar></app-navbar>创建一个视图并实例化navbar component类。

了解有关View Here is why you will not find components inside Angular

的更多信息

答案 1 :(得分:0)

更新

Angular 只会实例化一个组件

  1. 它遇到了该组件的选择器
  2. 如果组件在 entryComponent 数组中提供
  3. 如果组件包含在路由定义中