Как в Gulp cобирать стили в 2 файла?

Сейчас через галп собираю less файлы через импорт в один и его переношу в готовый проект.
Хочу чтобы стили с медиа запросами передавались в другой файл и в готовом проекте были файлы styles.css и media.css.
Пробовал в gulp.src('./src/css/styles.less') делать так gulp.src('./src/css/*.less'), но тогда не работают переменные. Помогите пожалуйста)
const gulp = require('gulp');
const autoprefixer = require('gulp-autoprefixer');
const del = require('del');
const browserSync = require('browser-sync').create();
const concat = require('gulp-concat');
const cleanCSS = require('gulp-clean-css');
const sourcemaps = require('gulp-sourcemaps');
const gulpif = require('gulp-if');
const gcmq = require('gulp-group-css-media-queries');
const less = require('gulp-less');
const smartgrid = require('smart-grid');

const isDev = (process.argv.indexOf('--dev') !== -1);
const isProd = !isDev;
const isSync = (process.argv.indexOf('--sync') !== -1);



function clear(){
	return del('build/*');
}

function styles(){
	return gulp.src('./src/css/styles.less')
			   .pipe(gulpif(isDev, sourcemaps.init()))
			   .pipe(less())
			   .pipe(gcmq())
			   .pipe(autoprefixer({
		            browsers: ['> 0.1%'],
		            cascade: false
		        }))
			   //.on('error', console.error.bind(console))
			   .pipe(gulpif(isProd, cleanCSS({
			   		level: 2
			   })))
			   .pipe(gulpif(isDev, sourcemaps.write()))
			   .pipe(gulp.dest('./css'))
			   .pipe(gulpif(isSync, browserSync.stream()));
}



function html(){
	return gulp.src('./*.php')
			.pipe(gulpif(isSync, browserSync.stream()));
}

function watch(){
	if(isSync){
		browserSync.init({
	        proxy: "shtory"
	    });
	}
	gulp.watch('./src/css/**/*.less', styles);
	gulp.watch('./*.php', html);
}

function grid(done){
	let settings = {
		columns: 12,
    	offset: "30px",
    	//mobileFirst: true,
    	container: {
	        maxWidth: "1140px",
	        fields: "15px"
	    },
    	breakPoints: {

    		
    		lg: {
    			width:"1199.98px"
    		},
    		md: {
	            width: "991.98px"
	        },
	        sm: {
	            width: "767.98px"
	        },
	        xs: {
	            width: "575.98px"
	        },
	        xxs: {
	            width: "420px"
	        }
    	}
	};

	smartgrid('./src/css', settings);
	done();
}

let build = gulp.series(clear, 
	gulp.parallel(styles, html)
);

gulp.task('build', build);
gulp.task('watch', gulp.series(build, watch));
gulp.task('grid', grid);
  • Вопрос задан
  • 62 просмотра
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы