massef
@massef

Gulp. Что вызывает эту ошибку?

Здравствуйте.

Генерирую спрайты с помощью gulp, все прекрасно работало, но сейчас выдает ошибку Error: Invalid file type
Не понимаю, какие именно файлы ему не нравятся.

Используется плагин gulp.spritesmith. Все исходники для спрайта одного формата.
Коротко говоря, раньше все прекрасно работало, в gulpfile.js ничего не менял, просто добавляю изображения если нужно и все.

Обновлял сам gulp как глобально так и локально, gulp.spritesmith тоже обновил.
Гуглил по ошибке, ничего не нашел.

Кто сталкивался?

Таск генерации спрайта:
gulp.task('sprite:build', function() {
	var spriteData = 
		gulp.src(path.src.spriteOrigin) // путь, откуда берем картинки для спрайта
			.pipe(plumber())
			.pipe(spritesmith({
				imgName: path.build.spriteImgName, // записывается в шаблон
				cssName: '_sprite-data2.scss', // название файла с переменными
				cssFormat: 'scss', // формат css переменных
				algorithm: 'binary-tree',
				cssTemplate: 'sass.template.mustache', // массив данных для спрайта
				cssVarMap: function(sprite) {
					sprite.name = 's-' + sprite.name
				}
			}));

	spriteData.img.pipe(gulp.dest(path.build.spriteImgPath)); // путь, куда сохраняем картинку
	spriteData.css.pipe(gulp.dest(path.src.spriteSass)); // путь, куда сохраняем стили
});
  • Вопрос задан
  • 603 просмотра
Решения вопроса 2
teotlu
@teotlu
Навёрстываю упущенное
Это может быть из-за какого-то файла, не являющегося картинкой, лежащего в папке, где у вас картинки.
К примеру, если это на локалхосте, то какой-нибудь Thumbs.db.
Попробуйте задать расширения явно, например вот так:
src/images/sprite/*.+(jpg|jpeg|png)

У меня была такая же ошибка, мне помогло.
Ответ написан
@antonowano
Профессиональный самоучка
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы