gulp-typescript-如何将我的打字稿文件从不同的目录映射到一个目录?

时间:2018-11-27 16:01:44

标签: typescript gulp gulp-watch gulp-typescript

我正在尝试使用gulp编写任务运行器,以编译存在于单独目录中的打字稿文件,然后转到其他目录。

这是我的gulpfile的样子:

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

gulp.task('main-typescript', function() {
  return tsProject.src()
    .pipe(tsProject())
    .js.pipe(gulp.dest("./scripts"));
});

gulp.task('pages-typescript', function() {
  return tsProject.src()
    .pipe(tsProject())
    .js.pipe(gulp.dest("./scripts/pages"));
});

gulp.task('watch', function () {
  gulp.watch('./typescript/**/*.ts', gulp.series('main-typescript'));
  gulp.watch('./pages/**/*.ts', gulp.series('pages-typescript'));
});

下面是我当前的项目:

project root
|-- pages/
|  |-- <pageName>/
|  |  |-- <pageName>.ts
|-- typescript/
|  |-- main.ts
|  |-- config.ts
|-- scripts/

当我运行任务运行器时,我的项目如下:

project root
|-- pages/
|  |-- <pageName>/
|  |  |-- <pageName>.ts
|-- typescript/
|  |-- main.ts
|  |-- config.ts
|-- scripts/
|  |-- <pageName>/
|  |  |-- <pageName>.js
|  |-- typescript/
|  |  |-- main.js
|  |  |-- config.js

这实际上是我想要的:

project root
|-- pages/
|  |-- <pageName>/
|  |  |-- <pageName>.ts
|-- typescript/
|  |-- main.ts
|  |-- config.ts
|-- scripts/
|  |-- pages/
|  |  |-- <pageName>.js
|  |-- main.js
|  |-- config.js

我之前没用过大量的胶水,所以我真的不知道我需要改变以获得我想要的结果。有人能对此有所启发吗?

欢呼

0 个答案:

没有答案