我正在使用Gulp和Mocha定义基于种子node.js的Typescript服务器项目,我正在查看示例:https://www.typescriptlang.org/docs/handbook/gulp.html。
使用以下代码定义了gulpfile:
var gulp = require("gulp");
var ts = require("gulp-typescript");
var tsProject = ts.createProject("tsconfig.json");
gulp.task("default", function () {
return tsProject.src()
.pipe(tsProject())
.js.pipe(gulp.dest("dist"));
});
我知道这段代码会将Typescript编译成javascript,并将生成的文件放在" dist"夹。但是,我想打破这段代码并理解每一点上发生的事情(我不确定哪一段代码会调用Typescript编译器)。
1)那么,代码的哪一部分会调用编译器?
2).js调用了什么? (我猜这是调用打字稿编写的调用,但我不知道)。
我在gulp文档中发现的问题是它不是很全面。我想找到所有api方法的文档(例如," src"," js"," createProject"," pipe&#34 ;等)。有关https://www.npmjs.com/package/gulp-typescript上gulp-typescript的文档为您提供了代码片段,但未解释详细信息。
我已经通过markgdyr在https://gulpjs.org观看了视频,但其他视频用于浏览器项目,我对此并不感兴趣,谢谢。
答案 0 :(得分:1)
通过您创建的TypeScript项目tsProject
管道源文件执行编译步骤。
这会生成一个包含一组JavaScript文件js
的对象,以及一组TypeScript定义文件dts
。在这种情况下,您通过.js
访问JavaScript文件,并通过gulp.dest
将其保存在输出文件夹中。
js
不是一个函数,而是一个简单的属性访问。
gulp-typescript docs中的更多信息。