尝试(和失败)在 VSC 终端中使用 tsc 在 Visual Studio Code 中运行(成功安装)TypeScript 编译器

Posted

技术标签:

【中文标题】尝试(和失败)在 VSC 终端中使用 tsc 在 Visual Studio Code 中运行(成功安装)TypeScript 编译器【英文标题】:Trying (and failing) to run the (successfully installed) TypeScript Compiler in Visual Studio Code using tsc in VSC Terminal 【发布时间】:2021-03-03 16:43:12 【问题描述】:

我很欣赏这可能是一个幼稚的问题,但是我试图在黑暗中找到自己的方式,并且来自 Microsoft 的文档确实不像我需要的那样直观,因为我从未使用过任何一个Visual Studio CodeTypeScript 之前。

我已安装 Visual Studio Code(版本 1.51.1) Visual Studio Code > Help > About 引用 Node.js 12.14.1 - 我不确定它是否告诉我它已将其包含在自己的安装中,或者是否需要它才能正常工作 我已经下载了TypeScript for Visual Studio 2015(来自https://www.microsoft.com/en-us/download/details.aspx?id=48593)并按照the excellent and clear instructions from @Neurotransmitter成功安装

我已经编写并保存了一个基本的.ts 文件:

// my-first-typescript.ts

const myConst: number = 22;
console.log(myConst / 2);

如果我现在运行 Visual Studio Code > Terminal > New Terminal 并输入:

tsc my-first-typescript.ts

Windows 7 上会弹出一个控制台询问:

选择您要用来打开此文件的程序

显然终端正在尝试打开tsc.js,但它不知道如何打开。

这就是我卡住的地方。

有没有办法在不安装Node.js 的情况下执行tsc.js? (我猜不是?)

但是,Visual Studio Code 不是已经安装了Node.js 吗? (如果不是,它所指的 Node.js 12.14.1 是什么?)

我正在尽可能避免下载和安装Node.jsnpm

如果我必须这样做,那么我会的。

但是为了能够在 Visual Studio Code 中运行 TypeScript 编译器 (tsc) 需要下载很多东西。

【问题讨论】:

【参考方案1】:

您必须将 typescript 安装到您的环境中。是的,你需要node installed。

安装 node/npm 后你 can install typescript 使用

npm install -g typescript

之后你可以调用编译器tsc,这会将文件从.ts转换为.js

如果要运行,建议安装ts-node

那你就可以了

ts-node myFile.ts

【讨论】:

谢谢你,@distante。那么Visual Studio Code > Help > About 中对 Node.js 12.14.1 的引用是什么?是不是说它已经在我的计算机上识别了Node.js 的版本?还是说这是它需要的Node.js 的(最佳)版本? @Rounin 老实说我不是 100% 确定。但我认为它指的是VsSode使用的内部节点编译(它是一个javascript/electron/node App)。因为我安装了节点 12.13,但我在 VsCode 中也得到了 12.14.1。 感谢您的澄清,@distante。这表明无论 VSCode 指的是什么,它都与本地已安装的 node 的任何版本无关。 @Rounin Help -> About 显示了 VS Code 使用的内部 Node.js 版本,这是一个 Electron 应用程序。 Electron 捆绑了自己的节点版本。 没问题@Rounin,我们都是一些技术、库或 API 的初学者:D

以上是关于尝试(和失败)在 VSC 终端中使用 tsc 在 Visual Studio Code 中运行(成功安装)TypeScript 编译器的主要内容,如果未能解决你的问题,请参考以下文章

不会让我运行 node 。在 vsc 终端(制作不和谐机器人)

VSC终端检测不到webpack版本号和打包报错的2020年解决方案

使用 npm run 时是不是使用了不同版本的 tsc?

即使在安装 .NET 核心 SDK 后,Dotnet 命令也不起作用

Flutter / VSC 在你的 Flutter SDK 中找不到 Dart

这不是您要查找的 tsc 命令