软件开发综合实训的内容是Angular 2.0框架的学习。IDE使用Visual Studio Code;操作系统使用Mac OS,系统版本是OS X 10.12。
链接:
TypeScript基础
TypeScript 中文网:https://www.tslang.cn/
AngularJS1 官网:https://angularjs.org
AngularJS2 官网:https://angular.io
AngularJS 中文网:https://angular.cn
Angular应用的特性
Angular是一个JavaScript框架。可以被<script>
标签添加到HTML中。它的本质就是JS
- 组件
- 模块
- 数据绑定
- MVC -> MVVM -> MVW
其他特性
AngularJS 版本区别
1和2+版本
2009年,Misko Hevery和Adam Abrons 创造了GetAngular。
2012年,谷歌发布Angular1.0。
2016年,谷歌发布Angular2.0正式版。
1和2+的差异有多大?不是青蛙和蟾蜍的差异,而是非洲巨蛙和绿色小树蛙的区别,或者说就如同Java和JavaScript的外表差异一样。
AngularJS2 开始引入微软的TypeScript。许多概念都基于TypeScript。
官方在GitHub
上分别进行维护:
AngularJS1各个版本:https://github.com/angular/angular.js/releases
AngularJS2+各个版本: https://github.com/angular/angular/release
两个官网:
AngularJS1官网:https://angularjs.org
AngularJS2官网:https://angular.io
Angular CLI 安装
CLI:command line interface
命令行界面工具。安装之后可以使用一系列ng 命令来创建项目、添加文件以及执行一大堆开发任务,比如测试、打包和发布。
命令行工具用管理员权限。
使用npm命令安装:
npm install -g @angular/cli
安装成功之后,使用ng命令创建AngularJS项目:
ng new my-app
npm 安装依赖包:
npm install --save
打开服务:
ng serve --open
npm的镜像替换成淘宝:使用管理员权限打开命令行工具,安装时,添加淘宝代理:
npm install -g @angular/cli --registry https://registry.npm.taobao.org
Angular 2 架构
- 模块 (module)
- 组件 (component)
- 模板 (template)
- 元数据 (metadata)
- 数据绑定 (data binding)
- 指令 (directive)
- 服务 (service)
- 依赖注入 (dependency injection)
模块 module
模块是一种概念。可以参考:CommonJS,AMD,CMD。
但需要注意的是,Angular模块与JavaScript或TypeScript模块的概念不同,Angular有自己的模块系统。并非JavaScript或TypeScript一个文件就是一个模块。
官方说明:
Angular 模块 vs JavaScript 模块
Angualr模块(一个用@NgModule装饰的类)是Angualr的基础特性。
JavaScript也有自己的模块系统,用来管理一组JavaScript对象。它与Angular的模块系统完全不同且完全无关
JavaScript中,每个文件是一个模块,文件中定义的所有对象都从属于那个模块。通过export关键字,模块可以把它的某些独享声明为公共的。其它JavaScript模块可以使用import语句来访问这些公共对象
import { NgModule } from ‘@angular/core’;
import { AppComponent }from ‘./app.componen’;
export class AppModule { }