咱们知道由命令 ng new project-name,cli将会建立一个基础的angular应用,咱们是能够直接运行起来一个应用。这归功与cli已经给咱们建立好了一个根模块AppModule,而根模块就是用来启动此应用的模块。bootstrap
main.ts 是启动的起点,platformBrowserDynamic这个函数是浏览器平台的工厂函数,执行会返回浏览器平台的实例,而后对根模块进行初始化,链式的将全部的依赖的Module都给加载进来。每一个应用程序都是经过模块的using bootstrapModule
方法建立的。浏览器
import { enableProdMode } from '@angular/core'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app/app.module'; import { environment } from './environments/environment'; if (environment.production) { enableProdMode(); }
// 首先建立平台,而后建立应用程序实例。 platformBrowserDynamic().bootstrapModule(AppModule) .catch(err => console.error(err));
建立应用程序时,Angular会检查根模块AppModule,AppModule的属性bootstrap
用于引导应用程序。此属性一般来来引导应用程序的组件。而后Angular在DOM中找到做为自举组件的选择器的元素,并初始化该组件。大概就这样吧。app
import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppRoutingModule } from './app-routing.module'; import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, AppRoutingModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }
此随笔乃本人学习工做记录,若有疑问欢迎在下面评论,转载请标明出处。ide
若是对您有帮助请动动鼠标右下方给我来个赞,您的支持是我最大的动力。函数