Angular 快速入门
Angular 快速入门
AngularJS 官方网址
Angular:https://www.angular.cn/
Angular官网:https://angularjs.org/

AngularJS 1.X 的困境
- 饱受诟病的性能问题。
- 落后当前web的发展理念(如组件开发方式)
- 对手机端支持不够友好
Angular 2.x 特性
16年5月正式发布。
2版本取消了JS的叫法,直接叫做 Angular
2版本不能兼容1版本的代码。
- 移除 controller + $scope 设计,改用组件式开发(更易上手)
- 性能更好(渲染更快,变化监测效率更高)
- 优先为移动端应用设计(angular mobile toolkit)
- 更加贴合未来的标准(如/ES67,WebComponent)

Angular2 的核心概念

组件

组件使用案例

组件要素

组件的通讯机制

组件全生命周期

组件示例

元数据与装饰器

模板

数据绑定

属性绑定-[value] :把组件类的数据传递到组件模板中。

事件绑定-[keyup] :把模板产生的数据通过函数调用传递到组件类。

双向绑定-[(ngModel)] :实现数据双向流动。

组件渲染

组件树

数据流向

指令

案例

自定义指令

服务
服务是实现专一目的的逻辑单元,如日志服务。

依赖注入
组件一如外部构建(如服务)的一种机制。


分层注入

模块
- 框架代码以模块形式组织(文件模块)
- 功能单元以模块形式组织(应用模块)
文件模块

文件模块使用

应用模块
应用模块就是对应用类零散的组件、指令、服务等按照功能进行归类包装。

同模块的指令可以相互使用同模块的组件,跨模块的不可以。

应用模块


核心概念总览图

Angular 快速上手
TypeScript

TypeScript 是微软开发的编程语言。
JavaScript 的超集,兼容 JavaScript。
运行前需要预编译生成 JavaScript 代码。
加入类型判断,编译时进行类型检查。
文件扩展名为 .ts 。
案例

TypeScript = Type + JavaScript
类与接口

装饰器
一种特殊的类型的声明。
能够被附加到类、方法、访问符、属性或参数上。

想要了解更多,浏览TypeScript官网:https://www.typescriptlang.org
开发环境的准备
Node.js :推荐使用6.0以上版本。
webpack:打包工具,可以使用 npm install -g webpack 安装。
开发IDE开发工具(VS Code) :微软推出的免费跨平台编辑器,支持TypeScript 语法及高亮提示。
webpack 原理


Angular 快速入门的更多相关文章
- Angular快速入门篇
简介 AngularJS 是一个为动态WEB应用设计的结构框架,提供给大家一种新的开发应用方式,这种方式可以让你扩展HTML的语法,以弥补在构建动态WEB应用时静态文本的不足,从而在web应用程序中使 ...
- Vue.js 快速入门
什么是Vue.js vue是法语中视图的意思,Vue.js是一个轻巧.高性能.可组件化的MVVM库,同时拥有非常容易上手的API.作者是尤雨溪,写下这篇文章时vue.js版本为1.0.7 准备 我推荐 ...
- AngularJS 30分钟快速入门【译】
引用自:http://www.revillweb.com/tutorials/angularjs-in-30-minutes-angularjs-tutorial/,翻译如下: 简介 我三年前开始使用 ...
- React 快速入门小记
大约半个月前,我一直在思考一个问题,Angular.React 和 Vue,究竟该学什么? 听取了几位前辈的意见,也综合考虑了各方面的原因,最终选择了 React,希望我"没有选错" ...
- AngularJS快速入门指南20:快速参考
thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...
- AngularJS快速入门指南19:示例代码
本文给出的大部分示例都可以直接运行,通过点击运行按钮来查看结果,同时支持在线编辑代码. <div ng-app=""> <p>Name: <input ...
- AngularJS快速入门指南18:Application
是时候创建一个真正的AngularJS单页面应用程序了(SPA). 一个AngularJS应用程序示例 你已经了解了足够多的内容来创建第一个AngularJS应用程序: My Note Save Cl ...
- AngularJS快速入门指南17:Includes
使用AngularJS,你可以在HTML中包含其它的HTML文件. 在HTML中包含其它HTML文件? 当前的HTML文档还不支持该功能.不过W3C建议在后续的HTML版本中增加HTML import ...
- AngularJS快速入门指南16:Bootstrap
thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...
随机推荐
- 解决mysql的内存表“table is full”错误
最后参考http://blog.sina.com.cn/s/blog_6942a1590101429h.html 来解决,摘录下核心 后来GOOGLE得知,需要重建该表才可以. 1. 设置新的参数 m ...
- 路径遍历:ZIP条目覆盖
程序在解压zip文件时,如果没有验证zip条目,攻击者可能对条目覆盖,从而造成路径遍历 例如:以下代码示例解压zip文件. static final int BUFFER = 512; / ...
- C++ 执行 cmd 命令 删除文件 删除注册表项
#include <Windows.h> WinExec("cmd /C \"del C:\\Windows\\secretWin.ini\"",S ...
- ping主机不通邮件报警
#!/bin/bash#Author: wang#Date: 20170825 for ip in "192.168.101.28" do ping -c 1 $ip && ...
- c# 集合中有数字、字符的Orderby排序
string[] things= new string[] { "105", "101", "102", "103", ...
- hbase-java-api002(flush)
package api; import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apa ...
- java基础 逻辑
1, 用for循环打印一个4*5的矩形 public class Test { public static void main(String[] args){ for (int i = 1; i &l ...
- poj2114 寻找树上存在长度为k点对,树上的分治
寻找树上存在长度为k点对,树上的分治 代码和 这个 差不多 ,改一下判断的就好 #include <iostream> #include <algorithm> #inc ...
- C/C++笔试题(编程题)
面试过程中遇到的编程题整理,于此备录.分享,共勉.(持续更新中......欢迎补充) (1)用户输入M, N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出.写出C程序. 程序代码如下: ...
- Linux中常用的50个命令
1. [命令]:cat [功能说明]: concatenate files and print on the standard output #连接文件并打印到标准输出,有标准输出的都可以用重定向定向 ...