gulp doens在编译ts时忽略node_modules

时间:2017-10-13 06:19:50

标签: typescript gulp

我想编译我的打字稿文件。我在tsconfig.json中指定了一个排除的文件夹,但gulp-typescript会忽略它。

所以我收到此错误: node_modules \ typescript \ lib \ lib.webworker.d.ts(1870,6):错误TS2300:重复的标识符' XMLHttpRequestResponseType'。

tsc尝试编译node_modules ...

这是我的tsconfig.json:

{
"compilerOptions": {
    "target": "es5",
    "module": "commonjs"
},
"exclude": [
    "node_modules"
]
}

gulpfile.js:

var gulp = require("gulp");
var less = require("gulp-less");
var ts = require("gulp-typescript")
var sourcemaps = require("gulp-sourcemaps");

const tsProject = ts.createProject("tsconfig.json");

gulp.task("less", function () {
    gulp.src('http/webroot/**/*.less')
        .pipe(less())
        .pipe(gulp.dest(function (f){
            return f.base;
        }))
});

gulp.task("tsc", function () {
    var tsResult = gulp.src("**/*.ts")
        .pipe(sourcemaps.init())
        .pipe(tsProject())

    return tsResult.js
    .pipe(sourcemaps.write(""))
    .pipe(gulp.dest(function (f){
        return f.base;
    }));
});

gulp.task("default", ['less', "tsc"], function () {
    gulp.watch(".less", ["less"]);
});

这是我的源码:

enter image description here

1 个答案:

答案 0 :(得分:0)

尝试在gulpfile中添加ignore

gulp.task('default', function(){
                            //
                           //
                          //
        },
        ignore: ['./node_modules/**']