@artinnok
бекенд-программист

Почему файл main.js создается через раз?

Кусок gulpfile.js:

gulp.task('project:js', function() {
    gulp.src(path.src.js)
        .pipe(uglify())
        .pipe(concat('project.js'))
        .pipe(gulp.dest(path.build.js));
});

gulp.task('vendor:js', function() {
    var vendor = bower_files('**/*.js');
    vendor.push(path.src.semantic_js);
    gulp.src(vendor)
        .pipe(uglify())
        .pipe(concat('vendor.js'))
        .pipe(gulp.dest(path.build.js));
});

gulp.task('build:js', ['vendor:js', 'project:js'], function(){
    gulp.src(['static/build/js/vendor.js', 'static/build/js/project.js'])
        .pipe(concat('main.js'))
        .pipe(gulp.dest(path.build.js));
});


Файлы vendor.js и project.js пересоздаются каждый раз, но main.js - через раз. Почему?
Коллбэк в build:js срабатывает последним - проверял. Может быть файлы vendor.js и project.js не успевают создаться до коллбэка?
  • Вопрос задан
  • 168 просмотров
Решения вопроса 1
1vanu4
@1vanu4
Попробуйте добавить return в каждом задании.

gulp.task('project:js', function() {
    return gulp.src(path.src.js)
        .pipe(uglify())
        .pipe(concat('project.js'))
        .pipe(gulp.dest(path.build.js));
});

gulp.task('vendor:js', function() {
    var vendor = bower_files('**/*.js');
    vendor.push(path.src.semantic_js);
    return gulp.src(vendor)
        .pipe(uglify())
        .pipe(concat('vendor.js'))
        .pipe(gulp.dest(path.build.js));
});

gulp.task('build:js', ['vendor:js', 'project:js'], function(){
   return gulp.src(['static/build/js/vendor.js', 'static/build/js/project.js'])
        .pipe(concat('main.js'))
        .pipe(gulp.dest(path.build.js));
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы