TypeScript: TypeScript 安装与配置

最后更新:2026-08-26

安装 TypeScript 只需一行命令,但配置好开发环境需要了解几个关键概念——这一课带你从零搭好 TypeScript 的"工作台"。

1. 安装 TypeScript

TypeScript 通过 npm(Node.js 的包管理器)安装。你的电脑上需要先有 Node.js。

(1) 检查 Node.js 是否已安装

打开终端(Windows 用 PowerShell,macOS 用 Terminal),输入:

BASH
node --version
npm --version

如果能看到版本号(比如 v18.17.09.6.3),说明已安装。如果提示"命令未找到",请先去 Node.js 官网下载安装 LTS 版本。

(2) 全局安装 TypeScript

BASH
npm install -g typescript

-g 表示全局安装,装好之后在任何目录都能使用 tsc 命令。

(3) 验证安装成功

BASH
tsc --version

看到类似 Version 5.3.3 的输出,说明安装成功。

▶ 示例:检查 TypeScript 安装状态

BASH
# 依次执行以下命令,确认环境就绪
node --version
npm --version
tsc --version

输出:

TEXT 📖 仅展示
v18.17.0
9.6.3
Version 5.3.3
💡 提示: 如果 tsc --version 提示命令未找到,可能是 npm 全局安装目录没加入系统 PATH。Windows 上尝试重启终端;macOS/Linux 上用 sudo npm install -g typescript 重装。


2. 第一个 tsconfig.json

tsconfig.json 是 TypeScript 项目的配置文件,告诉编译器如何处理你的代码。虽然简单项目可以不用它,但实际开发中几乎每个 TS 项目都有这个文件。

(1) 快速生成

在项目目录下执行:

BASH
tsc --init

这会自动生成一个 tsconfig.json,里面包含所有可配置项(大部分被注释掉了)。

(2) 核心配置项解读

刚生成的配置文件内容很多,但初学者只需关注这几个:

JSON
{
  "compilerOptions": {
    "target": "ES2016",
    "module": "commonjs",
    "strict": true,
    "esModuleInterop": true,
    "outDir": "./dist",
    "rootDir": "./src",
    "skipLibCheck": true
  }
}
配置项 作用 推荐值
target 编译输出的 JS 版本 "ES2016""ES2020"
module 模块系统 "commonjs"(Node.js)或 "ES2015"(浏览器)
strict 开启所有严格类型检查 true——务必开启
esModuleInterop 允许 default 导入兼容 true
outDir 编译输出目录 "./dist"
rootDir 源代码目录 "./src"
skipLibCheck 跳过第三方库类型检查 true(加速编译)
💡 提示: strict: true 是 TypeScript 的灵魂开关。它一次性开启 noImplicitAnystrictNullChecksstrictFunctionTypes 等多个严格检查项。虽然初期会多报一些错误,但这些错误恰恰是你应该修复的。不要关掉它——关掉 strict 等于放弃了 TypeScript 大部分的价值。

▶ 示例:一个适合本教程的 tsconfig.json

JSON
{
  "compilerOptions": {
    "target": "ES2020",
    "module": "commonjs",
    "strict": true,
    "esModuleInterop": true,
    "outDir": "./dist",
    "rootDir": "./src",
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules"]
}
📌 重点: include 指定哪些文件参与编译(src/**/* 表示 src 目录下所有文件),exclude 排除不需要编译的目录。


3. VS Code 配置

VS Code 和 TypeScript 是"亲兄弟"——都是微软的产品,VS Code 对 TS 的支持是开箱即用的,不需要额外安装插件。

(1) 内置功能

VS Code 已经内置了 TypeScript 语言服务,提供:

(2) 推荐安装的插件

插件 作用
TSLint(或 ESLint + TypeScript 插件) 代码风格检查,发现潜在问题
Prettier 自动格式化代码,统一团队风格
Code Runner 在编辑器内直接运行 TS 文件(自动编译+执行)

(3) 配置自动编译

在 VS Code 中按 Ctrl+Shift+B(macOS 用 Cmd+Shift+B),选择 tsc: watch,VS Code 就会在后台监听文件变化——你每次保存 .ts 文件,它自动编译成 .js,不需要手动跑 tsc

💡 提示: tsc: watch 模式就像自动保存的"翻译官"——你写一句中文,它立刻帮你翻成英文。开发时始终开着它,效率翻倍。


4. 项目目录结构

一个标准的 TypeScript 项目长这样:

TEXT 📖 仅展示
my-project/
├── src/              ← TypeScript 源代码
│   ├── index.ts      ← 入口文件
│   └── utils.ts      ← 工具模块
├── dist/             ← 编译输出的 JavaScript(自动生成,不要手改)
│   ├── index.js
│   └── utils.js
├── tsconfig.json     ← TypeScript 配置
├── package.json      ← Node.js 项目配置
└── node_modules/     ← 依赖包(自动生成,不要提交到 git)
⚠️ 注意: dist/ 目录是编译器自动生成的,永远不要手动修改里面的文件。你修改了也没用——下次编译会被覆盖。所有的改动都应该在 src/ 中的 .ts 文件里完成。


5. 常见安装问题排查

问题 原因 解决方法
tsc 命令未找到 npm 全局路径未加入 PATH 重启终端;或用 npx tsc 替代
npm install -g 报权限错误 macOS/Linux 需要 sudo sudo npm install -g typescript
VS Code 不显示类型错误 没有打开 tsconfig.json 所在目录 用"打开文件夹"方式打开项目根目录
编译输出到错误位置 outDir 配置不对 检查 tsconfig.json 中的 outDirrootDir
中文注释编译后乱码 文件编码不是 UTF-8 VS Code 右下角选"Save with Encoding" → UTF-8

❓ 常见问题

Q 必须全局安装 TypeScript 吗?
A 不是必须的。你也可以在项目中本地安装:npm install typescript --save-dev,然后用 npx tsc 代替 tsc。本地安装的好处是项目团队使用统一的 TS 版本,避免"我这里能编译你那里不行"的问题。但学习阶段用全局安装更方便。
Q tsconfig.json 中 strict 一定要开吗?
A 强烈建议开启。strict 模式帮你捕获最多的类型错误,虽然刚开始会多一些红色波浪线,但每一条都是真正的问题。关掉 strict 就像买了车但不系安全带——能用,但不安全。
Q 编辑器必须用 VS Code 吗?
A 不是必须的,WebStorm、Sublime Text 等都支持 TypeScript。但 VS Code 是免费的,且对 TS 的支持最完善(毕竟是同一家公司的产品),所以本教程以 VS Code 为准。
Q dist 目录需要提交到 git 吗?
A 不需要。dist 是编译产物,任何人拿到源码后执行 tsc 就能重新生成。把 dist 加入 .gitignore 即可。

📖 小节

📝 作业

  1. 基础题(难度⭐):在你的电脑上安装 TypeScript,执行 tsc --version 确认安装成功,把版本号记录下来。
  2. 进阶题(难度⭐⭐):创建一个项目目录,执行 tsc --init 生成 tsconfig.json,然后将 strict 设为 trueoutDir 设为 "./dist"rootDir 设为 "./src"
  3. 挑战题(难度⭐⭐⭐):在 VS Code 中打开上一步创建的项目目录,配置 tsc: watch 自动编译模式,尝试修改 tsconfig.json 中的 target 值(从 ES2020 改为 ES5),观察编译输出的 JS 代码有什么变化(提示:箭头函数会变成普通函数)。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏