ts-node 是什么?

2023-11-24 15:37:51 浏览数 (1)

是什么

ts-node 是一个 TypeScript 执行引擎,能让我们在 Node.js 环境下直接运行 TypeScript 代码。

摘抄自 ts-node 官网: ts-node is a TypeScript execution engine and REPL for Node.js. It JIT transforms TypeScript into JavaScript, enabling you to directly execute TypeScript on Node.js without precompiling. This is accomplished by hooking node's module loading APIs, enabling it to be used seamlessly alongside other Node.js tools and libraries.

使用场景

如果我们用 JS 写了一段程序:sayHello.js,想要执行一下这段程序,我们只需要在控制台使用 node sayHello.js 命令即可(如下图)。

但是如果我们编写程序使用的是 TypeScript:sayHello.ts,node sayHello.ts 命令无法直接运行这段程序,会报告错误,原因是 Node.js 无法识别 TypeScript 语法中的类型标注。

ts-node 这个工具,解决了上面的问题,它可以让你直接在 Node.js 环境下运行 TypeScript 代码。

它的优点就是,不需要你安装 typescript,也不需要你配置 tsconfig.json,只需要一条命令(tsnode sayHello.ts),就能方便地运行 TypeScript 代码。

与VSCode结合

虽然使用 ts-node 可以让我们只用一条命令(ts-node yourTsFile.ts)就能执行 TypeScript 程序,但一次一次的敲击命令也很烦。更重要的是,我们不仅期望能方便地运行 TypeScript 程序,还要能方便地调试 TypeScript 程序。

我们可以将 VSCode 中的 “Run and Debug”功能与 ts-node 结合起来(如下图)。

这样,在 VSCode 中,我们只需要点一下鼠标,就能方便地运行或调试我们的 TypeScript 程序。

参考

  • https://typestrong.org/ts-node/
  • https://nodejs.org/en/learn/command-line/how-to-use-the-nodejs-repl

0 人点赞