乐闻世界logo
搜索文章和话题

Whats the difference between tsc typescript compiler and ts node?

7 个月前提问
3 个月前修改
浏览次数119

2个答案

1
2

tsc(TypeScript 编辑器)和 ts-node 是两个不同的工具,它们用于TypeScript代码的不同方面和场景:

tsc(TypeScript 编译器)

  • 定义tsc 是 TypeScript 的官方编译器,它是 TypeScript 语言的一部分。
  • 功能:它将 TypeScript 代码编译成 JavaScript 代码。TypeScript 是 JavaScript 的超集,所以它需要被编译成 JavaScript,才能在任何能运行 JavaScript 的环境中执行。
  • 用法:当你想要生成 JavaScript 文件以便在生产环境中部署或者在其他需要纯 JavaScript 代码的环境下运行时,你会使用 tsc
  • 过程:通常,tsc 编译过程包括类型检查和生成相应的 JavaScript 文件。这个过程可能会包括多个步骤,比如从 .ts 转换到 .js,从 .tsx 转换到 .jsx,或者根据 tsconfig.json 文件中的配置进行其他转换。
  • 安装:通常作为 TypeScript 包 (npm install -g typescript) 的一部分被安装。

ts-node

  • 定义ts-node 是一个第三方工具,允许在 Node.js 环境中直接运行 TypeScript 代码。
  • 功能:它结合了 TypeScript 编译器和 Node.js,省去了编译步骤,直接执行代码。
  • 用法:当你想快速运行 TypeScript 代码,特别是在开发过程中,或者用于 REPL(交互式解释器)时,ts-node 非常有用。
  • 过程ts-node 在内部使用 tsc 来编译 TypeScript 代码到 JavaScript,然后在 Node.js 环境中直接运行这个 JavaScript 代码,它通常不会输出 .js 文件到文件系统。
  • 安装:可以单独安装(npm install -g ts-node),并且通常用于开发依赖。

总的来说,tsc 主要用于编译 TypeScript 代码到 JavaScript 文件,适合生产环境的部署,而 ts-node 更多用于开发过程中快速执行和测试 TypeScript 代码。两者都是TypeScript开发生态中的重要工具,但它们适用于不同的场景。

2024年6月29日 12:07 回复

最常见的做法是tsc用于生产构建和以与 一起ts-node运行的开发目的。这是我经常用于节点/打字稿项目的开发模式的命令:--watch``nodemon

shell
"dev": "nodemon -w *.ts -e ts -x ts-node --files -H -T ./src/index.ts"
2024年6月29日 12:07 回复

你的答案