Sublime Text 本身不运行 TypeScript 校验,需正确连接本地 tsserver 并加载 tsconfig.json 才能启用类型检查;95% 的功能失效源于插件选错、tsserver_path 配置错误或 tsconfig.json 不在项目根目录。

Sublime Text 本身不运行 TypeScript 校验,所谓“调试规范校验工具”,本质是让 Sublime 正确连接并驱动本地 tsserver,再由它读取 tsconfig.json 执行类型检查与语义分析。装错插件、路径填空、tsconfig.json 不在项目根目录——这三者覆盖了 95% 的“没报错”“跳转失效”问题。
确认 tsc 和 tsserver 在终端能真正调用
所有功能都依赖这两个命令行工具,不是“装了 TypeScript”就行,而是它们必须能被 Sublime 启动的子进程找到并执行。
-
tsc --version和tsserver --version必须输出相同版本号(如Version 5.4.5);若后者报command not found,说明node_modules/.bin没进系统PATH - macOS/Linux 用户检查
echo $PATH是否含~/.npm-global/bin或/usr/local/bin;Windows 用户查系统环境变量里 Node.js 安装路径下的node_modules\.bin - 用
nvm/volta管理 Node 版本时,Sublime 启动时读的PATH和终端不一致——别指望自动继承,必须显式配路径 - Node.js 推荐用 v18 或 v20;v14 已过时,v16 在部分插件中存在兼容问题
只装 SublimeTSC,别碰 TSCompleteMe 或 TypeScript-Sublime-Plugin
SublimeTSC 是当前唯一轻量、活跃维护、专注桥接 tsserver 的方案;其他插件要么多年未更新,要么自带旧版内嵌服务,不读 tsconfig.json,也不支持 moduleResolution: bundler 等现代配置。
- 安装方式:按
Cmd+Shift+P(macOS)或Ctrl+Shift+P(Win/Linux)→ 输入Package Control: Install Package→ 搜索并安装SublimeTSC(注意名称无空格) - 装完重启 Sublime,打开任意
.ts文件,状态栏左下角应显示TS,右键菜单出现TypeScript子项 - 别装
TSFormatter或SublimeLinter-tslint:已废弃,不兼容 TS 4.0+ 和 Sublime Text 4
手动填死 tsserver_path,路径必须相对项目根目录
默认行为会尝试调用全局 tsserver,但在多项目、多 Node 版本、pnpm/yarn 环境下几乎必失败。填错路径不会报错,只会静默降级为“只有语法高亮”。
- 打开
Preferences → Package Settings → SublimeTSC → Settings - 在右侧用户设置中添加(macOS/Linux):
{ "tsserver_path": "./node_modules/.bin/tsserver", "tsserver_options": ["--locale", "zh-CN"] } - Windows 用户改用:
"./node_modules/.bin/tsserver.cmd" - 如果项目没装 TypeScript,先运行
pnpm add -D typescript或yarn add -D typescript - 别填全局路径如
/usr/lib/node_modules/typescript/lib/tsserver.js——它无法读取项目级tsconfig.json中的paths、baseUrl
确保 tsconfig.json 被识别且位置正确
tsserver 启动成功 ≠ 配置生效。它只从当前打开的文件夹(即 Sublime “项目根目录”)向上查找 tsconfig.json。不在根目录?高级检查全失效。
- 打开 Sublime 时,用
File → Open Folder…选中含tsconfig.json的目录,而不是只打开单个.ts文件 - 按
Ctrl+`打开控制台,操作后看是否有Starting tsserver with:日志;若只有Could not start server: Error: spawn tsserver ENOENT,说明tsserver_path错了 -
tsconfig.json里用了@/components别名?必须同时配baseUrl(值是相对于该 JSON 文件的路径,不是项目根)和paths -
.tsx文件要支持 JSX,除了语法包,还需在SublimeTSC设置中加"enable_tsx": true
最常被忽略的点:Sublime 不会自动感知你终端里 cd 到哪了,它只认你用 Open Folder 打开的那个路径;tsserver_path 填的是相对这个路径的地址,不是相对你家目录或 Sublime 安装目录。路径写错、tsconfig.json 放错层、右下角语法没设成 TypeScript——这三个地方任一出问题,就只剩高亮。


















