为了Angular2做了一些技术准备。

首先遇到的是TSD,其实我们哪怕不需要它也没有关系,但……TypeScript毕竟还是比较新,我们很难知道目前现流行的一些库是否已经开始支持TypeScript。而TSD就像npm一样,专门用来管理已经被标记可以直接在TypeScript所引用的一个管理TypeScript包工具。

所以TSD也应该是作为TypeScript的一个标配吧。

安装

npm install tsd -g

查询类命令

tsd --查看帮助
tsd init -- 初始化,创建 `tsd.json` 和 `tsd.d.ts` 文件。
tsd query angular2 -- 查询库。 `-i`:版本信息,`-r`:库所需要的依赖关系,`-y`:历史更新记录。
tsd query angular2 -a browse -- 直接使用浏览器打开查询库的github网页,这个功能很酷哈。
tsd query angular2 -a visit -- 直接使用浏览器打开查询库的官页,这个功能很酷哈。

安装类命令

tsd install angular2 -- 安装angular2库。`-s`:表示保存版本信息到 `tsd.json`,`-r`:表示连同依赖库一并安装,`-o`:表示强制覆盖已经存在库。

tsd reinstall -- 重新安装所有库。
tsd update -- 重新更新所有库。
tsd link -- 自动将npm或bower已经安装的库连接到`tsd.d.ts`中,我测试了一下,但是没有成功。先放过。
tsd rebundle -- 移除 `tsd.d.ts` 中已经失效的包声明信息。

tsd.json 文件

通常是通过 tsd init 来创建,但假如我们了解各项属性的说明,也大可自己创建,这些属性包括:

version:版本名,必填项,固定 v4 值。
repo:包仓储地址,必填项,这里是指github,而如果是用TSD来管理包,那么值必须:borisyankov/DefinitelyTyped。
ref:git 分支名,必填项,通常用 master
path:typescript包文件目录路径,必填项,默认:typings
bundle:包声明信息文件,必填项,通常用 typings/tsd.d.ts
installed:已经安装包文件配置信息,只有当:tsd install angular2 -s,加上 -s 才会把包信息保存到这里。

tsd.d.ts 文件

当我们安装包时,如果加上 -s 参数时才会自动加上。以下初始安装 angular2 的配置信息。

/// <reference path="angular2/angular2.d.ts" />
/// <reference path="es6-promise/es6-promise.d.ts" />
/// <reference path="rx/rx-lite.d.ts" />
/// <reference path="rx/rx.d.ts" />

这个文件非常重要,因为如果你想让第三方库可以直接在IDE被智能显示,那么务必要加上。其实熟悉ASP.NET MVC的人应该比较清楚,作用和MVC完全一样,写法也是。

.tsdrc

这是一个JSON文件,用来定义全局TSD配置信息,比如:网络代理(天朝你懂的)、github token信息。

{
    "proxy": "http://proxy.example.com:88", 
    "strictSSL": false, 
    "token": "0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33"
}

引用