TypeScript 教程
- 第1节:TypeScript 快速入门
- 第2节:TypeScript 2.0介绍
- 第3节:TypeScript 2.1介绍
- 第4节:TypeScript 3.1介绍
- 第5节:TypeScript 基础类型
- 第6节:TypeScript 变量声明
- 第7节:TypeScript 接口
- 第8节:TypeScript 类
- 第9节:TypeScript 函数
- 第10节:TypeScript 泛型
- 第11节:TypeScript 枚举
- 第12节:TypeScript 类型推论
- 第13节:TypeScript 类型兼容性
- 第14节:TypeScript 高级类型
- 第15节:TypeScript Symbols
- 第16节:TypeScript 迭代器和生成器
- 第17节:TypeScript 模块
- 第18节:TypeScript 命名空间
- 第19节:TypeScript 命名空间和模块
- 第20节:TypeScript 模块解析
- 第21节:TypeScript 声明合并
- 第22节:TypeScript JSX
- 第23节:TypeScript 装饰器
- 第24节:TypeScript Mixins
- 第25节:TypeScript 三斜线指令
- 第26节:TypeScript 声明文件结构
- 第27节:TypeScript 声明文件举例
- 第28节:TypeScript 声明文件规范
- 第29节:TypeScript 声明文件原理
- 第30节:TypeScript 声明文件模板
- 第31节:TypeScript 声明文件发布
- 第32节:TypeScript 声明文件使用
- 第33节:TypeScript tsconfig.json
- 第34节:TypeScript 编译选项
- 第35节:TypeScript MSBuild编译选项
- 第36节:TypeScript 构建工具整合
- 第37节:TypeScript 每日构建
TypeScript 构建工具整合
与其它构建工具整合
Browserify
安装
npm install tsify
使用命令行交互
browserify main.ts -p [ tsify --noImplicitAny ] > bundle.js
使用API
var browserify = require("browserify");
var tsify = require("tsify");
browserify()
.add('main.ts')
.plugin('tsify', { noImplicitAny: true })
.bundle()
.pipe(process.stdout);
更多详细信息:smrq/tsify
Duo
安装
npm install duo-typescript
使用命令行交互
duo --use duo-typescript entry.ts
使用API
var Duo = require('duo');
var fs = require('fs')
var path = require('path')
var typescript = require('duo-typescript');
var out = path.join(__dirname, "output.js")
Duo(__dirname)
.entry('entry.ts')
.use(typescript())
.run(function (err, results) {
if (err) throw err;
// Write compiled result to output file
fs.writeFileSync(out, results.code);
});
更多详细信息:frankwallis/duo-typescript
Grunt
安装
npm install grunt-ts
基本Gruntfile.js
module.exports = function(grunt) {
grunt.initConfig({
ts: {
default : {
src: ["**/*.ts", "!node_modules/**/*.ts"]
}
}
});
grunt.loadNpmTasks("grunt-ts");
grunt.registerTask("default", ["ts"]);
};
更多详细信息:TypeStrong/grunt-ts
gulp
安装
npm install gulp-typescript
基本gulpfile.js
var gulp = require("gulp");
var ts = require("gulp-typescript");
gulp.task("default", function () {
var tsResult = gulp.src("src/*.ts")
.pipe(ts({
noImplicitAny: true,
out: "output.js"
}));
return tsResult.js.pipe(gulp.dest('built/local'));
});
更多详细信息:ivogabe/gulp-typescript
jspm
安装
npm install -g jspm@beta
注意:目前jspm的0.16beta版本支持TypeScript
更多详细信息:TypeScriptSamples/jspm
webpack
安装
npm install ts-loader --save-dev
基本webpack.config.js
module.exports = {
entry: "./src/index.tsx",
output: {
filename: "bundle.js"
},
resolve: {
// Add '.ts' and '.tsx' as a resolvable extension.
extensions: ["", ".webpack.js", ".web.js", ".ts", ".tsx", ".js"]
},
module: {
loaders: [
// all files with a '.ts' or '.tsx' extension will be handled by 'ts-loader'
{ test: /\.tsx?$/, loader: "ts-loader" }
]
}
};
查看更多关于ts-loader的详细信息
或者
- awesome-typescript-loader
MSBuild
更新工程文件,包含本地安装的Microsoft.TypeScript.Default.props
(在顶端)和Microsoft.TypeScript.targets
(在底部)文件:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- Include default props at the bottom -->
<Import
Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props"
Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props')" />
<!-- TypeScript configurations go here -->
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
<TypeScriptRemoveComments>false</TypeScriptRemoveComments>
<TypeScriptSourceMap>true</TypeScriptSourceMap>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
<TypeScriptRemoveComments>true</TypeScriptRemoveComments>
<TypeScriptSourceMap>false</TypeScriptSourceMap>
</PropertyGroup>
<!-- Include default targets at the bottom -->
<Import
Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets"
Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />
</Project>
关于配置MSBuild编译器选项的更多详细信息,请参考:[在MSBuild里使用编译选项](./Compiler Options in MSBuild.md)
NuGet
- 右键点击 -> Manage NuGet Packages
- 查找
Microsoft.TypeScript.MSBuild
- 点击
Install
- 安装完成后,Rebuild。
更多详细信息请参考Package Manager Dialog和using nightly builds with NuGet