Ответы пользователя по тегу Gulp.js
  • Как настроить watch в gulp?

    vladislav_boychenko
    @vladislav_boychenko
    Купаюсь в гривнах
    Сказать, что очень странная сборка -- ничего не сказать.
    1. Подключайте browser-sync правильно:
    const browserSync = require('browser-sync').create();

    2. Если вы используете деструктуризацию, используйте ее правильно, для чего дублирование?
    const { series, parallel, gulp } = require('gulp');

    3. Если вы ипользуете строгий режим, зачем вы смешиваете const и var? Используйте только const (и при надобности let).
    4. Если вы используете Gulp 4, можно отказаться от ключевых слов "gulp" и "task". Добавьте в деструктуризацию еще "src" и "dest", чтобы получилось так:
    const { series, parallel, src, dest, gulp } = require('gulp');

    После чего пишите таски стрелочными функциями и пользуйтесь всеми прелестями gulp 4, например:
    const styles = () => {
      return src('path.src.style')
        .pipe(sass())
        .pipe(autoprefixer())
        .pipe(csso())
        .pipe(dest(path.build.css))
        .pipe(browserSync.stream())
    };

    5. Вотчеры и exports так никто не пишет. Разделите это. У вас должнен быть отдельно вотчер и отдельно дефолтный таск для запуска проекта. В вашем случае в общем се должно выглядеть так:
    // Отдельно таск для работы с html
    const startHtml = () => {
        return src('src/*.html')
        .pipe(rigger())
        .pipe(dest(path.build.html))
        .pipe(browserSync.stream());
    };
    
    // Отдельно через browser-sync отслеживаете изменения в html-файлах. 
    const watcher = () => {
    	browserSync.init({
    		server: {
    			baseDir: './src/'
    		}, 
    		notify: false
    	});
        watch('./src/*.html', startHtml);
    }
    
    // Отдельно запускаете это все.
    exports.default(series(startHtml, watcher));
    Ответ написан
    2 комментария
  • Import, Export в Gulp?

    vladislav_boychenko
    @vladislav_boychenko
    Купаюсь в гривнах
    Ну, если не вебпак, то роллап.
    Ответ написан
  • Тask gulp для min.js?

    vladislav_boychenko
    @vladislav_boychenko
    Купаюсь в гривнах
    Я делаю так:
    gulp.task('scripts-libs', function(){
    	return gulp.src([
    		'app/libs/jquery/jquery.js',
    		'app/libs/**/*.js'
    	])
    	.pipe(concat('libs.min.js'))
    	.pipe(uglify())
    	.pipe(gulp.dest('app/js'));
    });

    Соответственно нужны gulp-concat и gulp-uglify.
    Ответ написан