5

以前はすべての縮小された JavaScript ファイルが特定のディレクトリに配置されていたプロジェクトを現在リファクタリングしています。ここで、縮小版をソース ファイルと同じディレクトリに配置する必要があります。

現在、私はこれを行います:

gulp.task( 'scripts', function () {
    return gulp.src( source_paths.scripts )
        .pipe( uglify( {
            preserveComments: 'false'
        } ) )
        .pipe( rename( {suffix: ".min"} ) )
        .pipe( gulp.dest( './build/js' ) )
        .pipe( notify( {
            message: 'Scripts task complete!',
            onLast : true
        } ) );

} );

ファイルを移動することを除いて、これは機能します。その行を削除するだけでなく、の使用を変更してみgulp.dest()ました。.pipe( gulp.dest( '' ) )どちらの場合も縮小された JS は書かれておらず、とても悲しかったです。

ソースファイルと同じディレクトリにすべてのファイルを書き込むにはどうすればよいですか?

4

2 に答える 2

7

あなたは現在、 に書き込みを行っています。build/jsもちろん、destファイルが書き込まれていないため、結果を削除しています。コメントが示唆するように、呼び出しfile.baseで無名関数を呼び出すことができますdest。次のことを守ってください...

// fixed spacing madness
gulp.task('scripts', function () {
    return gulp.src(source_paths.scripts)
        .pipe(uglify({
            preserveComments: 'false'
        }) 
        .pipe(rename({suffix: '.min'}))
        .pipe(gulp.dest(function(file) {
            return file.base;
        }))
        .pipe(notify({
            message: 'Scripts task complete!',
            onLast : true
        }));
});
于 2016-03-01T04:43:24.880 に答える
0

USE " ./ " ... 現在の場所

gulp.task('task_name', function () {
    return gulp.src(path\*.js) // or other selection
    .pipe(uglify()) 
    .pipe(rename({suffix: '.min'})).pipe(gulp.dest("./"));
});
于 2017-01-07T18:19:26.720 に答える