将 TypeScript 编译器作为 NPM 模块调用

And*_*dry 9 javascript node.js npm requirejs typescript

我有一个用 TypeScript 编写的项目,我使用任务运行程序来构建(无论是:Gulp、Jake 等)。我使用的 TypeScript 编译器是我从NPM安装的:

npm install typescript
Run Code Online (Sandbox Code Playgroud)

重要提示:正如您所看到的,没有全局-g参数,这是故意的。因为我需要使用经过一些修改的特定版本的编译器。

tsc以编程方式调用

所以我想从配置任务管理器的 Javascript 文件调用编译器:

var tsc = require("typescript");

function compile() {
  tsc.compile(...); // I would like to do something like this
}
Run Code Online (Sandbox Code Playgroud)

我可以这样做吗?我已经尝试过了,但到目前为止还没有得到太多运气。

car*_*ant 6

你当然可以。有许多工具是tsify使用TypeScript Compiler API构建的。ts-nodets-loader

然而,它比单个调用稍微复杂一些compile