AlexonClassic
@AlexonClassic
Я только учусь

Gupl. Из-за чего такое странное поведение (вопрос новичка)?

Мой gulpfile.js:
var gulp = require('gulp'),
    sass = require('gulp-sass'),
    autoprefixer = require('gulp-autoprefixer'),
    sourcemaps = require('gulp-sourcemaps'),
    purge = require('gulp-css-purge'),
    browserSync = require('browser-sync');

var scssSrcFiles = ('templates/seb_minima/sass/**/*.scss'),
    cssFolderDest = ('templates/seb_minima/css'),
    PHPPath = ('/templates/**/*.php'),
    reload = browserSync.reload,
    supported = ['last 20 versions', '> 1%', 'IE >= 1', 'Firefox >= 1', 'Opera >= 1', 'Android >= 1', 'iOS >= 1', 'Safari >= 1'];

gulp.task('SASS to CSS', function () {
    return gulp.src(scssSrcFiles)
    .pipe(sourcemaps.init({loadMaps: true}))
        .pipe(sass({errLogToConsole: true, outputStyle: 'expanded'}).on('error', sass.logError))
        .pipe(purge({
            trim: true,
            shorten: true,
            format: true,
            bypass_media_rules: true,
            special_convert_rem_font_size: true,
            verbose: true,
            shorten_border: true
        }))
        .pipe(autoprefixer({browsers: supported, add: true, cascade: false, grid: true}))
        .pipe(sourcemaps.write('.'))
        .pipe(gulp.dest(cssFolderDest))
        .pipe(reload({stream: true}))
    return cache.clearAll();
});

gulp.task('browser-sync', function () {
    browserSync({
        proxy: {
            target: "http://my_site/"
        },
        browser: ["chrome"],
        notify: false,
    });
});

gulp.task('watch', function () {
    gulp.watch(scssSrcFiles, ['SASS to CSS']);
    gulp.watch(PHPPath).on('change', reload);
});

gulp.task('default', ['SASS to CSS', 'browser-sync', 'watch']);

Работает без вопросов. Но!
Для удобства чтения (сравнения), приведу здесь 2-е строчки:
scssSrcFiles = ('templates/seb_minima/sass/**/*.scss'),
    cssFolderDest = ('templates/seb_minima/css'),

Стоит мне в переменных scssSrcFiles и cssFolderDest изменить имя шаблона "seb_minima" на какое-либо другое (которое есть в проекте), например на "my_tmpl":
scssSrcFiles = ('templates/my_tmpl/sass/**/*.scss'),
    cssFolderDest = ('templates/my_tmpl/css'),

сразу в консоли получаю ошибку?:
CSS Parser Error: probably have something funny in your CSS, change it then please try again.
Reason: property missing ':'
Line: 27
Column: 1
Filename: demo/test1.css

Что это за фрукт этот demo/test1.css... Не пойму. В проекте у меня, нигде его нет (если не считать самого gulp-css-purge)... Но вопрос не в этом...

Вопрос:
Почему когда используется один путь, никаких ошибок и проблем - нет, как только изменяю путь - получаю ошибку...?

P. S.
Структура каталога, что в шаблоне "seb_minima" что в шаблоне "my_tmpl" - одинакова.
Папка SASS находится в корне шаблона. Т. е.:
  • templates/seb_minima/sass и
  • templates/my_tmpl/sass

Папка CSS, так же находится в корне шаблона:
  • templates/seb_minima/css
  • templates/my_tmpl/css

Т. е. все один в один, только название шаблонов (папок) - разное

Заранее благодарю за ответы
  • Вопрос задан
  • 90 просмотров
Пригласить эксперта
Ответы на вопрос 1
Zoxon
@Zoxon
Веб-разработчик
По тому что не находит папки templates/seb_minima/**
Поменяйте пути в gulpfile.js
Например на такие
var scssSrcFiles = ('templates/*/sass/**/*.scss'),
cssFolderDest = ('templates/*/css'),
...
Ответ написан
Ваш ответ на вопрос

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

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