1

gulp を使用して醜い JavaScript のソースマップ ファイルを生成しようとしています。私のタスクは次のようになります。

gulp.task('scripts', ['clean'], function() {

  return gulp.src([ 'src/app/**/*.js' ])
    .pipe(sourcemaps.init())
    .pipe(concat('app.min.js'))
    .pipe(uglify())
    .pipe(sourcemaps.write('.'))
    .pipe(gulp.dest('dest/app'));

});

によって生成された出力マップgulp-sourcemapsには空のnames配列が含まれているため、ブラウザーは関数の引数を元の名前に戻すことができません。

gulp-sourcemapsチェーンされたマップ ファイルを正しくマージしていないように思えますか? はプロパティgulp-concatを出力しませんnames(出力する必要はありません: 単に連結するだけです) gulp-uglify

gulp.task('scripts', ['clean'], function() {

  return gulp.src([ 'src/app/**/*.js' ])
    .pipe(sourcemaps.init())
//    .pipe(concat('app.min.js'))
    .pipe(uglify())
    .pipe(sourcemaps.write('.'))
    .pipe(gulp.dest('dest/app'));

});

上記は、namesプロパティが設定された正しいマップ ファイルを生成します。

私は何か間違ったことをしていますか、それとも誰かがこれに対する回避策を持っていますか?

4

1 に答える 1

0

これは Uglify2 のバグのようです。この簡単な修正で解決する必要があります。

https://github.com/mishoo/UglifyJS2/pull/546

于 2014-11-25T13:55:33.570 に答える