使用gulp编译TypeScript正在创建不需要的目标文件夹

时间:2016-02-04 05:23:51

标签: javascript typescript gulp

我正在尝试让Gulp在我的.ts目录中转换我的/dev文件,并将已转换的.js文件移到/build目录。

所需的结构如下:

/dev
 - index.ts
/build
 - index.js

实际发生的是这样的:

/dev
 - index.ts
/build
 - /dev
    - index.js

如您所见,dev文件夹正在重复。 gulpfile.js中的相关代码如下:

var gulp = require('gulp');
var ts = require('gulp-typescript');
var tsProject = ts.createProject('./tsconfig.json');

// gulp ts
gulp.task('ts', function () {
  return tsProject.src('dev/**/*.ts')
    .pipe(ts(tsProject))
    .pipe(gulp.dest('build/'));
});

我可以让我的其他构建任务以所需的方式运行,但无论出于何种原因,TypeScript任务都让我感到悲伤。

1 个答案:

答案 0 :(得分:1)

我解决了我的问题。将"rootDir": "dev"添加到tsconfig.json中的compilerOptions使得gulp任务按预期运行。

还发生了意外的副作用,并且TypeScript编译器开始抛出错误,指出它找不到之前没有问题的模块。我明确地将/// <reference path="../typings/tsd.d.ts" />添加到我的.ts文件中,然后重新开始营业。