为什么gulp没有创建css目标文件夹?

时间:2016-05-20 18:01:31

标签: css node.js npm gulp

我的同事有这个确切的代码,能够毫无问题地运行gulp,但我似乎无法编译css文件。 Gulp不会生成css目标文件或文件本身。 Gulp使build和js文件夹没有任何问题,它只有css的问题。每个包都是最新版本。

这让我相信这可能是一个环境问题。即使重新安装节点后,问题仍然存在。

节点版本:v4.4.4

npm版本:2.15.1

路径:/Users/[me]/perl5/perlbrew/bin:/Users/[me]/perl5/perlbrew/perls/perl-5.16.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

这是我的gulp文件:

    var gulp = require('gulp'),                       //Task runner
    uglify       = require('gulp-uglify'),        //Minimizies JS
    sass         = require('gulp-ruby-sass'),     //Compiles to CSS
    imagemin     = require('gulp-imagemin'),      // Minimize images
    concat       = require('gulp-concat'),
    concatCss    = require('gulp-concat-css'),
    gutil        = require('gulp-util'),
    autoprefixer = require('gulp-autoprefixer'),
    cssnano      = require('gulp-cssnano'),
    pug          = require('gulp-pug'),
    //htmlmin      = require('gulp-htmlmin'),
    browserSync  = require('browser-sync'),
    reload       = browserSync.reload;

//Error look-out
function errorLog(error){
  console.error.bind(error);
  this.emit('end');
}

// Scripts
gulp.task('scripts', function(){
  gulp.src('./src/js/*.js')
    .pipe(uglify())
    .on('error', errorLog)
    .pipe(concat('main.js'))
    .pipe(gulp.dest('./app/build/js'))
    .pipe(browserSync.stream());
});

/*gulp.task('htmlmin', function() {
  return gulp.src('./*.html')
    .pipe(htmlmin({collapseWhitespace: true}))
    .pipe(gulp.dest('./app'));
});*/

gulp.task('pug', function buildHTML() {
  return gulp.src('./views/*.pug')
  .pipe(pug())
  .pipe(gulp.dest('./app'));
});


var autoprefixerOptions = {
  browsers: ['last 2 versions', '> 5%', 'Firefox ESR']
};

// Styles
gulp.task('styles', function(){
  return sass('./src/sass/**/*.sass',{
    style: 'compressed'
  })
  .on('error', errorLog)
  .pipe(autoprefixer(autoprefixerOptions))
  .pipe(cssnano())
  .pipe(gulp.dest('./app/build/css'))
  .pipe(browserSync.stream())
});


// Images
gulp.task('imagemin', function(){
  gulp.src('./src/images/*/*')
  .pipe(imagemin())
  .pipe(gulp.dest('./app/build/images'));
});

// Static server
gulp.task('browser-sync', function() {

     browserSync.init({
          server: {
                baseDir: "./app"
          }
     });

      gulp.watch('./views/*.pug').on('change', reload);
});


// Watchers
gulp.task('watch', ['browser-sync'], function(){
  gulp.watch('./src/js/*.js', ['scripts']);
  gulp.watch('./src/sass/**/*.sass', ['styles']);
  gulp.watch('./src/images/*/*', ['imagemin']);
  //gulp.watch('./*.html', ['htmlmin']);
  gulp.watch('./views/*.pug', ['pug']);
});


//Run task
gulp.task('default', [
  'browser-sync',
  'scripts',
  //'htmlmin',
  'pug',
  'styles',
  'imagemin',
  'watch'
], browserSync.reload);

2 个答案:

答案 0 :(得分:0)

您可能会再次检查目录权限&可能会将权限设置为限制较少的权限,以查看其是否有效。

答案 1 :(得分:0)

更改您的任务,然后重试:

.init_array