1

通过我目前正在开发的应用程序,我也在学习 Gulp 并使用源映射。该应用程序是 Typescript 和 Javascript 的混合体。这些文件被连接并缩小。传递文件gulp-uglify时发生错误:

\src\App\node_modules\gulp-uglify\node_modules\vinyl-sourcemaps-apply\node_modules\source-map\lib\source-map\source-map-consumer.js:415
  throw new Error('"' + aSource + '" is not in the SourceMap.');
        ^
Error: "Common.ts" is not in the SourceMap.
at SourceMapConsumer_sourceContentFor [as sourceContentFor] (Z:\Dev\financial-app\src\App\node_modules\gulp-uglify\node_modules\vinyl-sourcemaps-apply\node_modules\source-map\lib\source-map\source-map-consumer.js:415:13)
at SourceMapGenerator.<anonymous> (Z:\Dev\financial-app\src\App\node_modules\gulp-uglify\node_modules\vinyl-sourcemaps-apply\node_modules\source-map\lib\source-map\source-map-generator.js:233:42)
at Array.forEach (native)

这只发生在使用gulp-sourcemaps. 当我删除管道中的源映射生成调用时,问题不会发生,但是我也没有任何源映射。

return merge(
        // TS compile
        gulp.src(filePath.appjs.src.ts)
          .pipe(sourcemaps.init())
          .pipe(ts(tsProject))
          .pipe(sourcemaps.write()),

        // JS compile
        gulp.src(filePath.appjs.src.js)
    )
    .pipe(sourcemaps.init({loadMaps: true}))
    .pipe(concat('appscripts.js'))
    .pipe(size({ title: 'APPJS' }))
    .pipe(sourcemaps.write())
    .pipe(gulp.dest(filePath.appjs.dest))
    //.pipe(uglify(filePath.uglifyOptions))
    .pipe(concat('appscripts.min.js'))
    .pipe(size({ title: 'APPJS minified' }))
    .pipe(gulp.dest(filePath.appjs.dest));

知道打字稿可能有用,./js/ts/而 javascript 位于./js/App.

4

0 回答 0