你好,我是一个很新的人。 问题是当我使用命令“gulp”scss文件运行默认任务时,不要编译而是复制到css文件夹 这是我的gulpfile.js
var gulp = require('gulp'); var sass = require('gulp-sass'); var autoprefixer = require('gulp-autoprefixer'); var browserSync = require('browser-sync'); var runSequence = require('run-sequence'); gulp.task('browserSync', function() { browserSync({ server: { baseDir: 'app' } }) }) gulp.task('sass', function() { return gulp.src('app/scss/**/*.scss') .pipe(autoprefixer({ browsers: ['last 2 versions'] })) .pipe(gulp.dest('app/css')) .pipe(browserSync.reload({ stream: true })); }) gulp.task('watch', function() { gulp.watch('app/scss/**/*.scss', ['sass']); gulp.watch('app/*.html', browserSync.reload); gulp.watch('app/js/**/*.js', browserSync.reload); }) gulp.task('default', function(callback) { runSequence(['sass', 'browserSync', 'watch'], callback ) })
目录树
app |-scss |- styles.scss |- _layout.scss |- _homepage.scss |- _profile.scss |- _contact.scss |-css在styles.scss中的
我有:
$orange: #f29528; $image: "../images/"; @import 'layout'; @import 'homepage'; @import 'profile'; @import 'contact';
答案 0 :(得分:5)
你不使用sass()。试试:
gulp.task('sass', function() {
return gulp.src('app/scss/**/*.scss')
.pipe(sass().on('error', sass.logError))
.pipe(autoprefixer({
browsers: ['last 2 versions']
}))
.pipe(gulp.dest('app/css'))
.pipe(browserSync.reload({
stream: true
}));
})
了解更多gulp-sass
答案 1 :(得分:2)
我使用它作为files.scss
的项目任务处理程序,并且对我来说效果很好ATM。
我希望它也适合你。
'use strict'
// @requesting packages
const gulp = require('gulp');
const sass = require('gulp-sass');
const autoprefixer = require('gulp-autoprefixer');
const sourcemaps = require('gulp-sourcemaps');
const cleancss = require('gulp-clean-css');
// @gulp task
gulp.task('sass', () =>
gulp.src('./scss/**/*.scss')
.pipe(sass({
outputStyle: 'nested',
sourceComments: false
}))
// *** The debug function isn't needed you can delete it if you want
.pipe(cleancss({debug: true}, function(details) {
console.log(details.name + ': ' + details.stats.originalSize);
console.log(details.name + ': ' + details.stats.minifiedSize);
}))
.pipe(autoprefixer({
versions: ['last 2 browsers']
}))
.pipe(sourcemaps.init())
.pipe(sass().on('error', sass.logError))
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest('./css'))
);
// @gulp watch task
gulp.task('default', () => {
gulp.watch('./scss/*.scss', ['sass']);
});

请务必更改sass route
中目录的路径。