Получение: 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 являются объектами, поэтому их необходимо заключить в фигурные скобки {}.