Переход на Gulp 4, [не создание сценариев и запуск сервера. Ошибка не отображается] - PullRequest
0 голосов
/ 15 января 2020

Я мигрировал с gulp 3.9.1 на 4.0.2, я решил проблемы, необходимые для введения gulp.series и gulp.parallel.

В генерируемой папке приложения я не вижу генерируемых моих скриптов кроме css файлов.

gulpfile. js

var gulp        = require('gulp');
var templates   = require('./tools/gulp-templates.js');
var scripts     = require('./tools/gulp-scripts.js');
var styles      = require('./tools/gulp-styles.js');
var fonts       = require('./tools/gulp-fonts.js');
var build       = require('./tools/gulp-build.js');
var run         = require('./tools/gulp-run.js');

gulp.task('default', );

gulp.task('templates', templates);

gulp.task('scripts',gulp.parallel('templates'), scripts);

gulp.task('styles', styles);

gulp.task('fonts', fonts);

gulp.task('build', gulp.parallel('styles', 'scripts','fonts'), build);

gulp.task('run', gulp.parallel('build'), run);

gulp-scripts. js

let headerComment = require('gulp-header-comment');
let git = require('git-rev');
let strip = require('gulp-strip-comments');

let b = browserify({
    detectGlobals: false,
    entries: './src/app.js',
    debug: true
}).transform("babelify", {
    presets: [['es2015', {loose: true}], 'stage-0'],
    plugins: ['transform-proto-to-assign']
});

module.exports = function() {

        git.long(function (str) {

            return b.bundle()
                .pipe(source('app.js'))
                .pipe(buffer())
                .pipe(strip())
                .pipe(streamify(uglify({compress: true, beautify: false})))
                .pipe(headerComment(`Generated on <%= moment().format() %>
                    Commit: ${str}  
                `))
                .pipe(gulp.dest('./app/'))
        })
};

Папка приложения до миграции

enter image description here

Папка приложения после миграции

enter image description here

Консольный выход с ошибками

enter image description here

1 Ответ

1 голос
/ 16 января 2020

Первое, что я хотел бы изменить, это некоторые из ваших задач, такие как

gulp.task('scripts',gulp.parallel('templates'), scripts);

gulp.task('build', gulp.parallel('styles', 'scripts','fonts'), build);

gulp.task('run', gulp.parallel('build'), run);

Вот task подпись из документов (https://gulpjs.com/docs/en/api/task#signature)

задача ([имя-задачи], задача-функция)

У вас есть gulp.task('run', gulp.parallel('build'), run);, что последний run должен быть частью аргумента taskFunction, поэтому вы, вероятно, хотите:

gulp.task('run', gulp.series('build', run));

gulp.task('build', gulp.series( gulp.parallel('styles', 'scripts','fonts'), build)); и

gulp.task('scripts',gulp.series('templates', scripts));

У вас могут быть другие проблемы, но начните с вышеуказанных изменений.

...