Ответы пользователя по тегу Gulp.js
  • Работа gulp-rigger?

    @Sashjkeee Автор вопроса
    f-e
    Проблема решена..

    Было
    2821625c4ab3431aad5c32304c0aaba5.png

    Стало
    127b05b60fad4006948ea29c462d90b1.png
    Ответ написан
    Комментировать
  • Какие плагины Gulp вы используете для front-end?

    @Sashjkeee Автор вопроса, куратор тега CSS
    f-e
    Теперь так выглядит мой gulpfile

    var gulp = require('gulp'),
        watch = require('gulp-watch'),
        prefixer = require('gulp-autoprefixer'),
        uglify = require('gulp-uglify'),
        sass = require('gulp-sass'),
        csscomb = require('gulp-csscomb'),
        uncss = require('gulp-uncss'),
        concat = require('gulp-concat'),
        cssmin = require('gulp-minify-css'),
        imagemin = require('gulp-imagemin'),
        pngquant = require('imagemin-pngquant'),
        rimraf = require('rimraf'),
        browserSync = require("browser-sync"),
        reload = browserSync.reload;
    Ответ написан
    2 комментария
  • В чем проблема? ошибка gulp?

    @Sashjkeee Автор вопроса
    f-e
    Проблема в плагине rigger
    Ответ написан
    2 комментария
  • Что за ошибка gulp?

    @Sashjkeee Автор вопроса
    f-e
    'use strict';
    
    var gulp = require('gulp'),
        watch = require('gulp-watch'),
        prefixer = require('gulp-autoprefixer'),
        uglify = require('gulp-uglify'),
        sass = require('gulp-sass'),
        sourcemaps = require('gulp-sourcemaps'),
        rigger = require('gulp-rigger'),
        cssmin = require('gulp-minify-css'),
        imagemin = require('gulp-imagemin'),
        pngquant = require('imagemin-pngquant'),
        rimraf = require('rimraf'),
        browserSync = require("browser-sync"),
        reload = browserSync.reload;
    
    var path = {
        build: {
            html: 'build/',
            js: 'build/js/',
            css: 'build/css/',
            img: 'build/img/',
            fonts: 'build/fonts/'
        },
        src: {
            html: 'src/*.html',
            js: 'src/js/main.js',
            style: 'src/style/main.scss',
            img: 'src/img/**/*.*',
            fonts: 'src/fonts/**/*.*'
        },
        watch: {
            html: 'src/**/*.html',
            js: 'src/js/**/*.js',
            style: 'src/style/**/*.scss',
            img: 'src/img/**/*.*',
            fonts: 'src/fonts/**/*.*'
        },
        clean: './build'
    };
    
    var config = {
        server: {
            baseDir: "./build"
        },
        tunnel: true,
        host: 'localhost',
        port: 9000,
        logPrefix: "Frontend_Devil"
    };
    
    gulp.task('webserver', function () {
        browserSync(config);
    });
    
    gulp.task('clean', function (cb) {
        rimraf(path.clean, cb);
    });
    
    gulp.task('html:build', function () {
        gulp.src(path.src.html) 
            .pipe(rigger())
            .pipe(gulp.dest(path.build.html))
            .pipe(reload({stream: true}));
    });
    
    gulp.task('js:build', function () {
        gulp.src(path.src.js) 
            .pipe(rigger()) 
            .pipe(sourcemaps.init()) 
            .pipe(uglify()) 
            .pipe(sourcemaps.write()) 
            .pipe(gulp.dest(path.build.js))
            .pipe(reload({stream: true}));
    });
    
    gulp.task('style:build', function () {
        gulp.src(path.src.style) 
            .pipe(sourcemaps.init())
            .pipe(sass({
                includePaths: ['src/style/'],
                outputStyle: 'compressed',
                sourceMap: true,
                errLogToConsole: true
            }))
            .pipe(prefixer())
            .pipe(cssmin())
            .pipe(sourcemaps.write())
            .pipe(gulp.dest(path.build.css))
            .pipe(reload({stream: true}));
    });
    
    gulp.task('image:build', function () {
        gulp.src(path.src.img) 
            .pipe(imagemin({
                progressive: true,
                svgoPlugins: [{removeViewBox: false}],
                use: [pngquant()],
                interlaced: true
            }))
            .pipe(gulp.dest(path.build.img))
            .pipe(reload({stream: true}));
    });
    
    gulp.task('fonts:build', function() {
        gulp.src(path.src.fonts)
            .pipe(gulp.dest(path.build.fonts))
    });
    
    gulp.task('build', [
        'html:build',
        'js:build',
        'style:build',
        'fonts:build',
        'image:build'
    ]);
    
    
    gulp.task('watch', function(){
        watch([path.watch.html], function(event, cb) {
            gulp.start('html:build');
        });
        watch([path.watch.style], function(event, cb) {
            gulp.start('style:build');
        });
        watch([path.watch.js], function(event, cb) {
            gulp.start('js:build');
        });
        watch([path.watch.img], function(event, cb) {
            gulp.start('image:build');
        });
        watch([path.watch.fonts], function(event, cb) {
            gulp.start('fonts:build');
        });
    });
    
    
    gulp.task('default', ['build', 'webserver', 'watch']);
    Ответ написан
    Комментировать