ts-node和tsc有啥区别[重复]

Posted

技术标签:

【中文标题】ts-node和tsc有啥区别[重复]【英文标题】:What is the difference between ts-node and tsc [duplicate]ts-node和tsc有什么区别[重复] 【发布时间】:2020-03-16 04:34:51 【问题描述】:

我是Typescript的新手,遇到了ts-node和tsc,也就是说,如果我们安装ts-node,ts-node默认包含tsc,因为据我所知,ts-node理解Typescript并运行直接上

【问题讨论】:

【参考方案1】:

tsc 是 TypeScript 编译器,与 ts-node 完全分离。

ts-node 是 Node.js 的 node 可执行文件的包装器,它安装支持 TypeScript 的模块加载器,可根据需要即时编译 TypeScript。来自its npm page:

TypeScript 节点通过为 .tsx?.jsx?(当 allowJs == true 时)扩展注册 TypeScript 编译器来工作。当 node.js 注册了一个扩展(通过 require.extensions)时,它将在内部使用该扩展进行模块解析。

ts-node 默认使用tsc,但如果您指定--compiler 选项,则可以使用其他编译器。

【讨论】:

所以,ts-node 有它自己的编译器,我们可以使用 ts-node 或 tsc,如果是,什么时候使用?例如用于开发和生产。谢谢 @Sukich - 不,ts-node 不是编译器。它使用一个编译器。 ts-node 在您想要一个工具 (ts-node) 为您即时编译基于 Node.js 的 TypeScript 时很有用。 tsc 在您想将 TypeScript 编译为 javascript 的任何其他时间都很有用——因为您不想在运行时在 Node.js 上执行此操作,或者因为您根本不使用 Node.js(编译为 JavaScript另一个环境,例如网络浏览器)。

以上是关于ts-node和tsc有啥区别[重复]的主要内容,如果未能解决你的问题,请参考以下文章

x++和++x有啥区别[重复]

这个和那个有啥区别[重复]

脚本语言和其他语言有啥区别[重复]

哈希映射和映射有啥区别[重复]

c编程中“”和''有啥区别[重复]

IQueryable 和 IEnumerable 有啥区别 [重复]