Angular基础入门3启动过程

Angular的启动过程

要解释Angular的启动过程需要先回答三个问题

1. 启动时加载了个页面

2. 启动时加载了哪些脚本

3. 这些脚本到底做了什么事

OK,让我们来打开.Angular-cli.json

 

然后看一下前两个问题的答案,在这个文件中有一个叫apps的数组,数组中的对象有一个index属性,和一个main属性,默认情况下,index属性指向srcroot属性)目录中的index.html,他是angular应用启动时加载的页面,main属性指向了src下面的main.ts他是angular应用启动时加载的脚本,main.ts负责引导angular应用启动,我们来看一下main.ts,这里是一个angular应用的起点

 

 

Ø import { enableProdMode } from '@angular/core'; 导入angular核心模块提供的enableProdMode方法,这个方法用来关闭angular应用的开发者模式。

 

Ø import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 从浏览器模块中导入一个platformBrowserDynamic方法这个方法会告诉angular使用哪个模块来启动应用。

Ø AppModule也就是命令行工具生成的那个整个应用的主模块

Ø environment:环境配置,angular对多环境的一个支持

Ø if (environment.production) {
  enableProdMode();
如果当前是生产环境就调用enableProdMode方法关闭开发者模式

Ø platformBrowserDynamic().bootstrapModule(AppModule); 最后我们会调用bootstrapModule()这个方法传入AppModule作为启动模块来启动应用这块是整个angular应用的起点程序是通过这里来开始运行的,angular在知道我要用AppModule作为主模块以后他会加载AppModule模块,然后angular会分析AppModule模块需要依赖哪些模块,并加载哪些模块,在app.module.ts文件中我们会看中,AppModule模块会依赖BrowserModuleFormsModuleHttpModule模块,加载这些模块之后,会再分析这些模块需要依赖哪些模块,然后再去加载哪些模块,以此类推,直到加载完所有所需的模块,当加载完以后,angular会在index.html文件中寻找启动模块指定的主组件对应的css选择器,也就是说启动后angular会在index.html文件中<app-root>会用主组件也就是AppComponent中指定的模板内容app.component.html),用这里面的内容替换到<app-root>这个标签,在这个整个过程完成之前,页面将会展示<app-root>这个标签中的内容,也即时loading这样的一个字符串

 

我们来启动一下这个应用看一下这个过程

我们为当前应用添加一个npm的脚本命令

 

 

 

 

 

这里面能选择的脚本都是在package.json里面定义的scripts属性中定义的),

设置脚本名称并选择scriptsstart然后点击应用

 

选择刚刚配置的脚本命令,点启动

 

 

脚本自动启动了ng serve指令开始编译应用如果出现webpackCompiled successful就代表编译成功了,我们就可以在浏览器中输入http://localhost:4200查看效果了。

 

 

 

 

我们建立起来的当前的开发环境会自动侦测src目录下面的改变任何对src目录下面文件的改变都会使服务器自动加载修改后的文件然后自动刷新浏览器中的页面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值