文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
开始
工具
在开始使用 TypeScript
前你最好有以下准备:
Node.js
> 8.0,最好是最新的稳定版(目前是 V10.16.3 )- 一个包管理工具
npm
或者yarn
- 一个文本编辑器或者
IDE
(如:vscode
)
安装
TypeScript
的安装很简单,你可以通过 npm
直接在全局安装 TypeScript
。
> npm install -g typescript
环境
创建一个目录:
mkdir ts-study && cd ts-study
接着创建 src
目录:
mkdir src && touch src/index.ts
用 npm
将目录初始化:
npm init
使用 TypeScript
的话通常也需要初始化:
tsc --init
这个时候你会发现目录下多了一个 tsconfig.json
文件。
这是 TypeScript
的配置文件,里面已经包含官方初始化的一些配置以及注释,我们现在进行自定义的配置:
{ "compilerOptions": { "target": "es5", // 指定 ECMAScript 目标版本: 'ES5' "module": "commonjs", // 指定使用模块: 'commonjs', 'amd', 'system', 'umd' or 'es2015' "moduleResolution": "node", // 选择模块解析策略 "experimentalDecorators": true, // 启用实验性的 ES 装饰器 "allowSyntheticDefaultImports": true, // 允许从没有设置默认导出的模块中默认导入。 "sourceMap": true, // 把 ts 文件编译成 js 文件的时候,同时生成对应的 map 文件 "strict": true, // 启用所有严格类型检查选项 "noImplicitAny": true, // 在表达式和声明上有隐含的 any 类型时报错 "alwaysStrict": true, // 以严格模式检查模块,并在每个文件里加入 'use strict' "declaration": true, // 生成相应的.d.ts 文件 "removeComments": true, // 删除编译后的所有的注释 "noImplicitReturns": true, // 不是函数的所有返回路径都有返回值时报错 "importHelpers": true, // 从 tslib 导入辅助工具函数 "lib": ["es6", "dom"], // 指定要包含在编译中的库文件 "typeRoots": ["node_modules/@types"], "outDir": "./dist", "rootDir": "./src" }, "include": [ // 需要编译的 ts 文件一个*表示文件匹配**表示忽略文件的深度问题 "./src/**/*.ts" ], "exclude": [ "node_modules", "dist", "**/*.test.ts", ] }
然后在 package.json
中加入我们的 script
命令:
{ "name": "ts-study", "version": "1.0.0", "description": "", "main": "src/index.ts", "scripts": { "build": "tsc", // 编译 "build:w": "tsc -w" // 监听文件,有变动即编译 }, "author": "", "license": "ISC", "devDependencies": { "typescript ": "^3.6.4" } }
编写第一个 TypeScript 程序
在 src/index.ts
中输入以下代码:
function greeter(person) { return "Hello, " + person } const user = "Jane User"
上面的代码会得到一个错误警告,表示参数具有隐式的类型转换,这是在 tsconfig.js
中配置的,所以我们为参数加上类型说明
function greeter(person: string) { return `Hello ${person}` }
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论