Получение: SyntaxError: отсутствует) после списка аргументов, но не могу выяснить, что не так с hulpfile.js

Привет, я получаю сообщение об ошибке запуска gulp default со следующим файлом gulp. Я не могу понять, что не так с файлом.

var gulp = require('gulp');
var sass = require('gulp-sass');
var sourcemaps = require('gulp-sourcemaps');
var autoprefixer = require('gulp-autoprefixer');
var browserSync = require('browser-sync').create();

var input = './scss/**/*.scss';
var output = './css';

gulp.task('sass', function() {
  return gulp.src(input)
    .pipe(sourcemaps.init())
    .pipe(sass(errLogToConsole: true, outputStyle: 'compressed'))
    .pipe(autoprefixer(browsers: ['last 2 versions', '> 5%', 'Firefox ESR']))
    .pipe(sourcemaps.write())
    .pipe(gulp.dest(output))
    .pipe(browserSync.stream());
});

// Watch files for change and set Browser Sync
gulp.task('watch', function() {
  // BrowserSync settings
  browserSync.init({
    proxy: "mydomain.loc",
    files: "./css/styles.css"
  });

  // Scss file watcher
  gulp.watch(input, ['sass'])
    .on('change', function(event) {
      console.log('File' + event.path + ' was ' + event.type + ', running tasks...')
    });
});

// Default task
gulp.task('default', ['sass', 'watch']);

Я уже переустановил узел, и весь пакет не решит проблему.

2 ответа

Пытался изменить это. Это напрямую выдает такую ​​же ошибку в другой строке:

/Users/hmook/Documents/Development/lvdb/gulpfile.js:14
    .pipe(autoprefixer(browsers: ['last 2 versions', '> 5%', 'Firefox ESR']))
                       ^^^^^^^^

SyntaxError: missing ) after argument list
    at createScript (vm.js:80:10)
    at Object.runInThisContext (vm.js:139:10)
    at Module._compile (module.js:599:28)
    at Object.Module._extensions..js (module.js:646:10)
    at Module.load (module.js:554:32)
    at tryModuleLoad (module.js:497:12)
    at Function.Module._load (module.js:489:3)
    at Module.require (module.js:579:17)
    at require (internal/module.js:11:18)
    at Liftoff.handleArguments (/usr/local/lib/node_modules/gulp/bin/gulp.js:116:3)

См. Gulp Sass с errLogToConsole: true все еще останавливает мои другие задачи наблюдения, а сгенерированные Gulp исходные карты не работают в Chrome.

Не используйте errLogToConsole, он больше не поддерживается.

.pipe(sass(errLogToConsole: true, outputStyle: 'compressed'))

Изменить это на

.pipe(sass({outputStyle: "сжатый"}).on("ошибка", sass.logError))

как в вариантах глоток-нахальный. Возможно, ваша более ранняя ошибка произошла из-за того, что вы не включили ваши параметры в фигурные скобки {} (это объект).

[РЕДАКТИРОВАТЬ]:

И ваша другая ошибка такая же

.pipe(autoprefixer(browsers: ['last 2 versions', '> 5%', 'Firefox ESR']))

должно быть

.pipe(autoprefixer( { browsers: ['last 2 versions', '> 5%', 'Firefox ESR'] } ))

Обратите внимание на фигурные скобки. Обычно параметры для плагинов gulp являются объектами, поэтому их необходимо заключить в фигурные скобки {}.

Другие вопросы по тегам