typescript - 为什么我的 TypeScript 项目仅在 VScode 中失败?

标签 typescript visual-studio-code

我正在维护一个使用 TypeScript 构建的开源项目。我已经几周没有参与该项目了,我回来修复一个错误。

但是通过 VScode 执行项目会突然失败。提到的错误都是合法的,我需要修复它们。但我无法理解为什么它们现在失败并且仅在 VScode 中失败,而不是通过命令行失败。

...project/node_modules/ts-node/src/index.ts:587
    return new TSError(diagnosticText, diagnosticCodes);
           ^
TSError: ⨯ Unable to compile TypeScript:
...project/src/bar.ts(361,27): error TS2532: Object is possibly 'undefined'.

正如我所说,确实是一个错误,但是如何才能让它暂时恢复正常呢?

最佳答案

正如我的评论,vscode 将使用内置 typescript 版本来检查 ts 文件的语法或运行 vscode launch(task)。有时你的项目ts版本与build in版本不同,这需要一些确认。

这是强制 vscode 使用你的项目 ts 版本的方法: 用你的 vscode 打开一个 ts 文件,看看右下角你可以看到 Typescript 版本(我猜是 4.3.x)。让我们单击并更改设置,以确保 vscode 在您的 node_modules

中使用 typescript

关于typescript - 为什么我的 TypeScript 项目仅在 VScode 中失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68506829/

相关文章:

visual-studio-code - 使用 VS Code 运行 bash 脚本

visual-studio - 在 Visual Code Studio 中哪里可以找到 Flutter 布局检查器?

go - 如何使用 VSCode 远程调试 Go 代码

javascript - PHTML 文件中的 VS 代码 Intellisense 支持内联 css/内联 javascript

reactjs - 在 redux-saga 中使用回调时出现问题

angular - 导入组件和模块的快捷方式

node.js - 使用 TypeScript 从 Sequelize 的响应中获取属性

VSCode 中的 Flutter 未连接到 devtools

typescript - 基于非空字符串的条件类型

html - 如何去除 ionic 4 段指示器(底线)?请告诉我