Как исправить застревание при запуске Gulp. - PullRequest
0 голосов
/ 15 мая 2019

Я недавно заменил сервер Mamp Pro установкой Vagrant для веб-сайта, над которым я сейчас работаю. После переключения на Vagrant моя команда «Watch» Gulp застревает на «Starting». Что может быть причиной того, что Gulp неправильно обрабатывает задачу, которая работала раньше?

Мой Gulpfile (опубликован ниже) не изменился, однако я обновил npm до последней версии (6.9.0) и переустановил node_modules.

Мой текущий gulpfile:

'use strict';

// Development or production
const dev  = ((process.env.NODE_ENV || 'development').trim().toLowerCase() === 'development');

// Paths
const paths = {

    // Sass/Css
    styles: {
        src: 'sass/**/*.scss',
        dest: '.'
    },

    // Javascript
    scripts: {
        src: ['js/*.js', '!js/theme.js', '!js/customizer.js'],
        dest:'js/dist'
    }

};

// Plugins
const gulp = require('gulp'),

    // Styles
    sass = require('gulp-sass'),
    postcss = require('gulp-postcss'),
    autoprefixer = require('autoprefixer'),
    cssnano = require('cssnano'),

    // Scripts
    concat = require('gulp-concat'),
    uglify = require('gulp-uglify'),
    rename = require('gulp-rename'),

    // Utility & stats
    noop = require('gulp-noop'),
    size = require('gulp-size'),
    sourcemaps = dev ? require('gulp-sourcemaps') : null;

console.log('Gulp', dev ? 'development' : 'production', 'build');

// Node sass compiler
sass.compiler = require('node-sass');

// Style compiler
function style() {
    return (
        gulp
            .src(paths.styles.src)
            .pipe(sourcemaps ? sourcemaps.init() : noop())

            // Output compact css file and log any errors
            .pipe(sass({outputStyle: 'compact'})
                .on('error', sass.logError))

            // Css prefixer and css minification
            .pipe(postcss([autoprefixer(), cssnano()]))

            // Write sourcemaps
            .pipe(sourcemaps ? sourcemaps.write() : noop())

            // Show file sizes
            .pipe(size({ showFiles:true }))

            // Destination for css file
            .pipe(gulp.dest(paths.styles.dest))
    );
}

// Script compiler
function script() {
    return (
        gulp
            .src(paths.scripts.src)

            // Concat all JS files and place them in the dist folder
            .pipe(concat('all.js'))
            .pipe(gulp.dest(paths.scripts.dest))

            // Uglify (minify) the JS file produced in the previous step
            .pipe(uglify())

            // Rename the uglified file
            .pipe(rename({ suffix: '.min' }))

            // Destination for minified js file
            .pipe(gulp.dest(paths.scripts.dest))


    )
}

function watch() {

    // Sassy watcher
    gulp.watch(paths.styles.src, style)

    // Concat and uglify scripts
    gulp.watch(paths.scripts.src, script)

}

exports.watch = watch;

npm -v: 6,9,0 Gulp -v: CLI версии 2.1.0, локальная версия 4.0.0

Журнал консоли, который регистрирует производственную среду, работает, но никакие дополнительные сообщения (/ error) не отображаются после инициализации задачи watch, отличной от ожидаемой [timestamp] Starting 'watch'.... Изменение файлов также не создает никаких полезных журналов в консоли.

...