Angular2是一款开源JavaScript库,由Google维护,用来创建页面应用程序。正式发布于2016年9月,基于ES6开发。

一、准备工作

使用Angular2开发,需要预先做一些配置上的配置,如NPM、Node.Js、Git等,还要对TypeScript有个大概的了解。

a)NPM是随同NodeJS一起安装的包管理器,那应该类似NuGet的作用了。NPM集成在了NodeJS安装包,可以一起安装,在CMD输入npm –v和node –v可以验证是否已安装。

b)TypeScript则是由微软开发的开源编程语言,是JavaScript的超级,扩展了JavaScript的语法,并且是强类型的。TypeScript的安装,可以下载安装包,也可以在CMD输入$ npm install -g typescript安装。

c) 使用TypeScript编写HelloWorld

创建index.html文件如下,引用hello.js。当前并不存在hello.js,需要从TypeScript编写的hello.ts编译生成。

hello.ts文件中只是简单的alert,这儿看不出typescript语法的特点。

然后在CMD加入文件所在的位置并执行tsc hello.ts,当前文件夹中就会出现hello.js,index.html就可以运行了。

d) 还要安装Git,之前顺便安装了GitExtension和TortoiseGit。

二、开始Angular 2

a) 使用Git Bash,创建项目存放路径。然后在目录中创建package.json、tsconfig.json、typings.json文件,内容可以从Angular2的GitHub或本书的示例代码复制。

然后需要执行npm install安装依赖组件,但国内基本无法直接使用npm,可以先安装淘宝的镜像$ npm install -g cnpm --registry=https://registry.npm.taobao.org,然后执行 cnpm install,cnpm会根据package.json下载需要依赖的组件。

b) 新建index.html内容为:

当前只添加了需要引用的js和css,没有其它内容。有必要了解一下添加这几个js引用的目的。

ES6Shim,Shim为垫片的意思,这个文件的作用主要为了保证对旧版本浏览器的兼容性。对于支持最新的ES6标准的浏览器,可以不需要这个文件。

Zone,大概作用是让Angular能够检测数据的变化,当前无法深入了解。

ReflectMetadata,Angular2使用Typescript语言,TypeScript具有类型注解(Annotation),添加这个引用是为了能够使用这些注解。

SystemJs,是一个模块加载器,用于创建模块并解析模块间的依赖。

c) 接下来创建TypeScript文件app.ts,.ts文件之后会被编译成.js文件。

使用import{things} from “where”的格式,添加依赖项。

Angular2的最大特点就是组件(component)。正常情况下,浏览器只能识别属于html的标记,比如<form>、<ul>等,如果想要浏览器识别一个<hello-world>标签,按照常理是不可能的,但这真是Angular2的组件要做的,即“教会浏览器识别新的标签”。

上面图片中@Component中便是定义了一个组件,selector属性指定了DOM元素即标签的名称,编译时会找到对应的组件做处理。

template属性可以指定模板,模板用倒引号( `…` )括起来,倒引号语法是ES6的新特性,可支持多行字符。

最后一行的bootstrap(HelloWorld);设定了程序的“入口”为HelloWorld组件,程序启动后,HelloWorld会首先被渲染。

学习资料:The Complete Book on AngularJS 2 by Ari Lerner, Felipe Coury, NateMurray, Carlos Taborda

Angular 2基础(一) 环境搭建的更多相关文章

  1. Centos 基础开发环境搭建之Maven私服nexus

    hmaster 安装nexus及启动方式 /usr/local/nexus-2.6.3-01/bin ./nexus status Centos 基础开发环境搭建之Maven私服nexus . 软件  ...

  2. Angular总结一:环境搭建

    工欲善其事必先利其器,开发 Angular 项目首先要搭建环境.Angular 的环境搭建包括三个方面,开发环境 WebStorm,命令行工具 Angular CLI,以及 nodejs. 一.安装 ...

  3. Python基础1-Python环境搭建

    Python环境搭建首先通过终端窗口输入 "python" 命令来查看本地是否已经安装Python以及Python的安装版本: 若未安装则需要下载安装,下面为linux和windo ...

  4. 大数据基础-2-Hadoop-1环境搭建测试

    Hadoop环境搭建测试 1 安装软件 1.1 规划目录 /opt [root@host2 ~]# cd /opt [root@host2 opt]# mkdir java [root@host2 o ...

  5. .Net Core + Angular Cli / Angular4 开发环境搭建

    一.基础环境配置 1.安装VS 2017 v15.3或以上版本 2.安装VS Code最新版本 3.安装Node.js v6.9以上版本 4.重置全局npm源,修正为 淘宝的 NPM 镜像: npm  ...

  6. .Net Core+Angular Cli/Angular4开发环境搭建教程

    一.基础环境配置1.安装VS2017v15.3或以上版本2.安装VSCode最新版本3.安装Node.jsv6.9以上版本4.重置全局npm源,修正为淘宝的NPM镜像:npminstall-gcnpm ...

  7. Angular入门,开发环境搭建,使用Angular CLI创建你的第一个Angular项目

    前言: 最近一直在使用阿里的NG-ZORRO(Angular组件库)开发公司后端的管理系统,写了一段时间的Angular以后发现对于我们.NET后端开发而言真是非常的友善.因此这篇文章主要是对这段时间 ...

  8. Angular2.0 基础: 环境搭建

    最近在学习Angular2的使用,其实看过Angular2 文档的都知道,相比于之前的Angular1,Angular2 的改动还是挺大的. 而对于‘angular2 的本地开发环境的搭建的中,我们首 ...

  9. 【1】循序渐进学 Zabbix :初识与基础依赖环境搭建( LNMP )

    写在前面的话 运维监控是一个很大的话题,在这一块个人接触的比较突出的服务主要有 Nagio 和 Zabbix 两款.而这几年跳过的公司中,Zabbix 一直都是首选且唯一选择,Nagios 没遇到. ...

随机推荐

  1. Qt之使用CQU库快速开发统一风格界面

    在使用Qt开发时,肯定是想让开发的项目界面统一风格:不希望每个界面都要程序员用代码去修饰美化以及进行事件处理等等,这样非常繁琐,容易出错而且没有格调:所以我就开发一个动态链接库,封装统一的风格界面.事 ...

  2. .NET手记-HttpClient解析GB2312乱码问题

    最近为App的服务器端卸了个爬虫程序,输出结果时发现出现乱码现象,尝试使用了几个方案发现效果并不太好,最后发现了一个很简单的用法. var result = await client.GetByteA ...

  3. 如何用java POI将word中的内容导入到mysql数据库中

    由于作业需要,要求我们将word文档中的数据直接导入到mysql中,在网上找了很常时间,终于将其解决. 由于比较初级,所以处理的word文档是那种比较规范的那种,条例比较清晰,设计的思路也比较简单,就 ...

  4. 使用maven构建多模块项目,分块开发

    在多人使用Maven协作开发项目时,尤其是稍微上点规模的项目,每个RD的工作都细分到具体功能和模块,有些模块甚至还要单独部署. 我们假设有这样一个商城项目,包括以下几个模块: 商城前台(shop) 管 ...

  5. Spring Boot + Spring Cloud 构建微服务系统(八):分布式链路追踪(Sleuth、Zipkin)

    技术背景 在微服务架构中,随着业务发展,系统拆分导致系统调用链路愈发复杂,一个看似简单的前端请求可能最终需要调用很多次后端服务才能完成,那么当整个请求出现问题时,我们很难得知到底是哪个服务出了问题导致 ...

  6. 解决Response.AddHeader("Content-Disposition", "attachment; filename=" + file.Name) 中文显示乱码

    如果file.Name为中文则乱码.解决办法是方法1:response.setHeader("Content-Disposition", "attachment; fil ...

  7. 常见注入手法第四讲,SetWindowsHookEx全局钩子注入.以及注入QQ32位实战.

    常见注入手法第四讲,SetWindowsHookEx全局钩子注入.以及注入QQ32位实战. PS:上面是操作.最后是原理 一丶需要了解的API 使用全局钩子注入.我们需要了解几个WindowsAPI. ...

  8. shiro源码篇 - shiro的session共享,你值得拥有

    前言 开心一刻 老师对小明说:"乳就是小的意思,比如乳猪就是小猪,乳名就是小名,请你用乳字造个句" 小明:"我家很穷,只能住在40平米的乳房" 老师:" ...

  9. mybatis教程6(逆向工程)

    什么是逆向工程 简单点说,就是通过数据库中的单表,自动生成java代码. Mybatis官方提供了逆向工程,可以针对单表自动生成mybatis代码(mapper.java\mapper.xml\po类 ...

  10. spring的第一天

    spring的第一天 ssm框架 spring  Spring是什么? Spring是容器框架,用来配置(装)Bean,并且维护Bean之间的关系.其中Bean可以是Java中的任何一种对象,可以是J ...