VSCode 自带的 TS 版本可能跟项目TS 版本不一样

VS Code 默认就内置了 TypeScript/JavaScript 语言服务(TypeScript Language Features 扩展) ,这个扩展是编辑器自带的,不需要你额外安装。

具体来说:

  • VS Code 内置了一个 TypeScript Server ,它同时为 .ts / .tsx 文件提供语法检查、类型提示、跳转、自动补全等功能;
  • 即使你的项目里没有安装 typescript 包,VS Code 也会使用自带的 TypeScript 版本(通常是内置的一个固定版本);
  • 如果你的项目里安装了 typescript(比如 node_modules/typescript),VS Code 会优先使用你项目里的版本,这样能保证语法检查和编译规则与实际构建保持一致。

你可以在 VS Code 中按下 Ctrl+Shift+P(或 Cmd+Shift+P) ,然后运行命令:

vbnet 复制代码
TypeScript: Select TypeScript Version

就能切换使用 VS Code 内置的 TypeScript项目本地的 TypeScript

所以你经常在项目中遇到格式化之后还是报 type 错误的问题,很可能就是这个原因。

ts 复制代码
// bar.ts
export interface User {
  id: number
}
export const name = "Alice"

// ✅ 正确写法 (TS 5.0+)
import { type User } from "./bar"
import { name } from "./bar"

// ❌ 错误写法 (TS 5.0+ 会报错)
import { User, name } from "./bar"
//        ~~~~
//        'User' is a type and must be imported using 'import type'.
相关推荐
沸点小助手19 小时前
6月沸点活动获奖名单公示|本周互动话题上新🎊
前端·后端
Csvn19 小时前
React 19 `use()` 来了:以后数据加载可以不用 useEffect?
前端·react.js
胡萝卜术19 小时前
从“分数打架”到“排名投票”:为什么你的ChatBI必须用RRF?
算法·设计模式·面试
没落英雄19 小时前
从零开始搭建一个 AI Agent —— LangChain + TypeScript 实战手记
前端·人工智能·架构
远航_19 小时前
git submodule
前端·后端·github
摸着石头过河的石头19 小时前
从 Webpack 到 RSBuild:前端构建工具的进化之路
前端
疯狂的魔鬼19 小时前
告别 boolean 地狱:一个文件上传组件的状态机实践
前端·设计
竹林81819 小时前
Solana DApp 开发踩坑实录:从零用 @solana/web3.js 实现链上数据查询与交易签名
前端·javascript
狂师19 小时前
测试工程师的AI 技能库:推荐5个让你效率翻倍的Skills
前端·后端·测试
李明卫杭州19 小时前
Vue3 watch 与 watchEffect 深度解析
前端