快速上手
好的工具能够让开发更加简单快捷
Angular CLI 是Angular提供给我们的一个脚手架工具,它是一个命令行工具,有了这个脚手架工具,可以利用它来创建项目、添加文件以及执行一大堆开发任务,比如测试、打包和发布。
步骤1.设置开发环境
首先你要保证你的机器上有Node.js和npm,最好还要安装Git(这些都是前端开发必备哦)
最新版本的Node.js会自带npm,不用单独安装
在cmd窗口(俗称黑框框)中或者Git Bash(右键菜单栏选择)中运行命令 node-v和npm-v,来验证一下正在运行的node和npm版本,如果你机器上的版本比较旧,可能会出现错误,所以推荐安装新版本

全局安装脚手架工具Angular CLI,输入npm install -g @angular/cli命令,其中-g是global的意思,意为全局,安装好后下一次就不用再安装了。

步骤2.新建项目
搭建好我们的环境以及脚手架工具后,使用 ng new 项目名称命令,即可在指定文件夹目录内创建我们的项目,请你耐心等待一会,因为需要安装很多npm包,所以需要花费一些时间

经过漫长的等待,我们的第一个项目终于创建好了,在目标文件夹内,已经自动为我们创建好了一个以项目名称命名的文件夹
步骤3.启动开发服务器
接下来我们使用命令行打开这个新创建的项目文件夹,使用cd 项目名称这个命令,请记住cd用于打开文件夹

接着使用ng serve – open或 ng serve -o命令启动开发服务器,这时会自动打开浏览器并访问http://localhost:4200/
界面如下

步骤4.编辑我们的第一个Angular组件
脚手架工具cli为我们创建了第一个Angular组件,名叫app-root的根组件,我们可以在文件目录./src/app/app.component.ts找到它,这是一个typescript类型的文件,打开这个组件文件,修改他的title属性
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = ' my first app';
}
当我们修改后,浏览器自动刷新,变成了我们修改后的标题
打开src/app/app.component.css 并给这个组件设置一些样式
h1 {
color: #369;
font-family: Arial, Helvetica, sans-serif;
font-size:24px;
}
这样我们就完成了Angular的”hello world”入门教程。
如果你很好奇创建了那么多项目文件,他们都是干什么的,那么我们就接来下看看项目文件概览。
项目文件概览
README.md文件 提供了一些如何使用 CLI命令的基础信息,是一个用markdown语法编写的文件。
src文件夹
我们的代码位于src文件夹中,所有的angular组件,模板,样式,图片以及我们的应用所需要的任何东西都在这个里面,这个文件夹以外的文件都是为构建应用提供支持用的。

文件名 | 用途 |
---|
app/app.component.{ts,html,css,spec.ts} | 使用HTML模板、CSS样式和单元测试定义AppComponent组件。 它是根组件,随着应用的成长它会成为一棵组件树的根节点。 |
app/app.module.ts | 定义AppModule,这个根模块会告诉Angular如何组装该应用。 目前,它只声明了AppComponent。 稍后它还会声明更多组件。 |
assets/* | 这个文件夹下你可以放图片等任何东西,在构建应用时,它们全都会拷贝到发布包中。 |
environments/* | 这个文件夹中包括为各个目标环境准备的文件,它们导出了一些应用中要用到的配置变量。 这些文件会在构建应用时被替换。 比如你可能在产品环境中使用不同的API端点地址,或使用不同的统计Token参数。 甚至使用一些模拟服务。 所有这些,CLI都替你考虑到了。 |
favicon.ico | 这个ico图标将作为浏览器的书签栏的图标 |
index.html | 这是别人访问你的网站是看到的主页面的HTML文件。 大多数情况下你都不用编辑它。 在构建应用时,CLI会自动把所有js和css文件添加进去,所以你不必在这里手动添加任何 <script> 或<link> 标签。 |
main.ts | 这是应用的主要入口点。 使用JIT compiler编译器编译本应用,并启动应用的根模块AppModule,使其运行在浏览器中。 你还可以使用AOT compiler编译器,而不用修改任何代码 —— 只要给ng build 或 ng serve 传入 –aot 参数就可以了。 |
polyfills.ts | 不同的浏览器对Web标准的支持程度也不同。 填充库(polyfill)能帮我们把这些不同点进行标准化。 你只要使用core-js 和 zone.js通常就够了,不过你也可以查看浏览器支持指南以了解更多信息。 |
styles.css | 这里是你的全局样式。 大多数情况下,你会希望在组件中使用局部样式,以利于维护,不过那些会影响你整个应用的样式你还是需要集中存放在这里。 |
test.ts | 这是单元测试的主要入口点。 它有一些你不熟悉的自定义配置,不过你并不需要编辑这里的任何东西。 |
tsconfig.{app|spec}.json | TypeScript编译器的配置文件。tsconfig.app.json是为Angular应用准备的,而tsconfig.spec.json是为单元测试准备 |
根目录

文件名 | 用途 |
---|
e2e/ | 在e2e/下是端到端(end-to-end)测试。 它们不在src/下,是因为端到端测试实际上和应用是相互独立的,它只适用于测试你的应用而已。 这也就是为什么它会拥有自己的tsconfig.json。 |
node_modules/ | Node.js创建了这个文件夹,并且把package.json中列举的所有第三方模块都放在其中。 |
.angular-cli.json | Angular CLI的配置文件。 在这个文件中,我们可以设置一系列默认值,还可以配置项目编译时要包含的那些文件。 要了解更多,请参阅它的官方文档。 |
.editorconfig | 给你的编辑器看的一个简单配置文件,它用来确保参与你项目的每个人都具有基本的编辑器配置。 大多数的编辑器都支持.editorconfig文件,详情参见 http://editorconfig.org 。 |
.gitignore | 一个Git的配置文件,用来确保某些自动生成的文件不会被提交到源码控制系统中。 |
karma.conf.js | 给Karma的单元测试配置,当运行ng test时会用到它。 |
package.json | npm配置文件,其中列出了项目使用到的第三方依赖包。 你还可以在这里添加自己的自定义脚本。 |
protractor.conf.js | 给Protractor使用的端到端测试配置文件,当运行ng e2e的时候会用到它。 |
README.md | 项目的基础文档,预先写入了CLI命令的信息。 别忘了用项目文档改进它,以便每个查看此仓库的人都能据此构建出你的应用。 |
tsconfig.json | TypeScript编译器的配置,你的IDE会借助它来给你提供更好的帮助。 |
tslint.json | 给TSLint和Codelyzer用的配置信息,当运行ng lint时会用到。 Lint功能可以帮你保持代码风格的统一。 |