gulp watch TypeError: функция объекта (сервер)

Я не могу заставить часы gulp работать. Это дает мне ошибку, которая начинается с «TypeError: Object function (server)». Вот полная ошибка (извините за скриншот): http://cl.ly/image/3p0j1F2L1S0I

Вот мой файл глотка:

var gulp = require('gulp'),

// Include plugins
  cache   = require('gulp-cache'),
  gutil   = require('gulp-util'),
  plumber = require('gulp-plumber'),
  notify  = require('gulp-notify'),
  rename  = require('gulp-rename'),

  compass   = require('gulp-compass'),
  minifycss = require('gulp-minify-css'),

  jshint = require('gulp-jshint'),
  uglify = require('gulp-uglify'),
  concat = require('gulp-concat'),

  imagemin   = require('gulp-imagemin'),

  livereload = require('gulp-livereload');



// Paths
// ============================================================
// var PATH = 'public_html/assets';



// Error Handling
// ============================================================
var onError = function (err) {
  gutil.beep();
  console.log( err );
};



// Styles Task
// ============================================================
gulp.task('styles-global', function() {
  return gulp.src('assets/scss/app.scss')
    .pipe( plumber({ errorHandler: onError }) )
    // .pipe(sass({ style: 'compressed' }))
    .pipe(compass({
      config_file: 'config.rb',
      css: 'assets/css',
      sass: 'assets/scss',
      image: 'assets/img'
    }))
    // .pipe(rename({suffix: '.min'}))
    // .pipe(minifycss())
    .pipe(gulp.dest('assets/css'))
    .pipe(livereload())
    .pipe(notify({ message: 'Styles task complete' }));
});

gulp.task('styles-base', function() {
  return gulp.src('assets/scss/base.scss')
    .pipe( plumber({ errorHandler: onError }) )
    // .pipe(sass({ style: 'compressed' }))
    .pipe(compass({
      config_file: 'config.rb',
      css: 'assets/css',
      sass: 'assets/scss',
      image: 'assets/img'
    }))
    // .pipe(rename({suffix: '.min'}))
    // .pipe(minifycss())
    .pipe(gulp.dest('assets/css'))
    .pipe(livereload())
    .pipe(notify({ message: 'Styles task complete' }));
});

gulp.task('styles-light', function() {
  return gulp.src('assets/scss/light.scss')
    .pipe( plumber({ errorHandler: onError }) )
    // .pipe(sass({ style: 'compressed' }))
    .pipe(compass({
      config_file: 'config.rb',
      css: 'assets/css',
      sass: 'assets/scss',
      image: 'assets/img'
    }))
    // .pipe(rename({suffix: '.min'}))
    // .pipe(minifycss())
    .pipe(gulp.dest('assets/css'))
    .pipe(livereload())
    .pipe(notify({ message: 'Styles task complete' }));
});

gulp.task('styles', ['styles-global', 'styles-base', 'styles-light']);




// JS Tasks
// ============================================================
gulp.task('scripts', function() {
  return gulp.src([
    'assets/js/plugins/jquery.hoverIntent.js',
    'assets/js/plugins/fancybox/jquery.fancybox.js',
    'assets/js/src/app.js'
  ])
    .pipe( plumber({ errorHandler: onError }) )
    .pipe(concat('app.js'))
    .pipe(gulp.dest('assets/js'))
    .pipe(rename({suffix: '.min'}))
    .pipe(uglify())
    .pipe(gulp.dest('assets/js'))
    .pipe(livereload())
    .pipe(notify({ message: 'JS task complete' }));
});


// HTML Tasks
// ============================================================
gulp.task('html', function() {
  return gulp.src('assets/tpl/**/*.html')
    .pipe(livereload());
});


// Default task
// -------------------------------------------------------------------
gulp.task('default', [], function() {
  gulp.start('styles', 'scripts');
  // gulp.start('styles', 'scripts', 'images');
});


// Watch task
// -------------------------------------------------------------------
gulp.task('watch', function() {
  gulp.watch('assets/scss/**/*.scss', ['styles']);
  gulp.watch('assets/js/**/*.js', ['scripts']);

  livereload.listen();
  gulp.watch('assets/tpl/**/*.html', ['html']).on('change', livereload.changed);
});

Я понятия не имею, как исправить. Я использую node.js версии 0.10.33, gulp версии 3.8.8. Если я запускаю задачи сценариев или стилей, все работает нормально. Просто глоток смотреть, что терпит неудачу.


person Angie Herrera    schedule 13.12.2014    source источник


Ответы (1)


Обязательно проверьте свой gulp -v, убедитесь, что он обновлен, а затем вы можете проверить, обновлены ли ваши пакеты npm outdated --depth=0https://docs.npmjs.com/cli/outdated

Это должно решить проблему.

person chronicole    schedule 13.12.2014