【发布时间】:2016-10-16 05:46:00
【问题描述】:
我收到了以下gulp 任务,
const gulp = require('gulp');
const del = require('del');
const typescript = require('gulp-typescript');
const tscConfig = require('./tsconfig.json');
const sourcemaps = require('gulp-sourcemaps');
const print = require('gulp-print');
// clean the contents of the distribution directory
gulp.task('clean', function () {
return del('dist/**/*');
});
// TypeScript compile
gulp.task('compile', ['clean'], function () {
return gulp
.src(tscConfig.files)
.pipe(print(function (filepath) {
return 'Processing ' + filepath + '...';
}))
.pipe(sourcemaps.init())
.pipe(typescript(tscConfig.compilerOptions))
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest('dist/app'));
});
gulp.task('build', ['compile']);
gulp.task('default', ['build']);
和目录结构
|
+- dist
|
+- src
| |
| +- app
| | |
| | + - example.ts
现在,如果我运行 gulp build,我会在 dist 中得到另一个 app/src,即
|
+- dist
| |
| + - app
| |
| + - src
| |
| + - app
| |
| + - example.js
| + - example.js.map
+- src
| |
| +- app
| | |
| | + - example.ts
这不是我想要的。如何让 gulp 改为创建以下目录结构?
|
+- dist
| |
| + - app
| |
| + - example.js
| + - example.js.map
|
+- src
| |
| +- app
| | |
| | + - example.ts
我需要gulp-replace 还是有其他选择?
编辑:tsconfig.json 如下:
{
"compilerOptions": {
"outDir": "dist/app",
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false,
"suppressImplicitAnyIndexErrors": true
},
"files": [
"src/app/**/*.ts"
]
}
【问题讨论】: