Ошибка подключения пакета gulp-imagemin
Установил gulp-imagemin командой npm i -D gulp-imagemin после подключил его в gulpfile.js const imagemin = require(«gulp-imagemin»);
При попытке запустить gulp получаю вот такую ошибку:
Из текста ошибки решил что нужно подключить через import import imagemin from «gulp-imagemin»; после чего ошибка изменилась
Погуглив нашёл другой вопрос https://stackoverflow.com/questions/58384179/syntaxerror-cannot-use-import-statement-outside-a-module и попытался использовать решение в виде добавления в файл package.json «type»: «module» но это ломало подключение остальных пакетов. Все подключали gulp-imagemin через require, а также в первой ошибке сказано что нужно наоборот удалить «type»: «module» . Решил что иду не в том направлении и проблема в установке.
Сначала установил uuid версии 7.0.3 при помощи команды npm i uuid . Далее посмотрел детали 3 уязвимостей статута «high» которые появились после установки gulp-imagemin.
Перешёл по ссылке https://npmjs.com/advisories/1753 где было сказано что нужно установить trim-newlines нужной версии. Я установил trim-newlines версии 4.0.2 командой npm install trim-newlines
После переустановки gulp-imagemin нечего не изменилось. Просьба обновить uuid и 3 уязвимости остались. Чистка кеша с атрибутом —force, переустановка и полное удаление node.js по инструкции в вопросе https://stackoverflow.com/questions/20711240/how-to-completely-remove-node-js-from-windows нечего не изменили.
Поиск решения приводил к ошибкам установки или ошибкам непосредственной работы пакета. Никаких похожих проблем именно с подключением не нашёл.
Источник
Почему не работает gulp-imagemin?
Пробую установить gulp-imagemin, но при запуске команды gulp-imagemin в терминале выдает ошибку:
ReferenceError: require is not defined in ES module scope, you can use import instead
This file is being treated as an ES module because it has a ‘.js’ file extension and ‘C:\Users\tempe\Desktop\gulp-start\package.json’ contains «type»: «module». To treat it as a CommonJS script, rename it to use the
‘.cjs’ file extension. Я так и не понял какой файл надо переименовать с расширением cjs. Помогите разобраться, как сделать импорт изображений из одной папки, сжать изображение и перенести их в другую папку. Пробовал через импорт, как написано в документации, но не получилось.
Вот что у меня написано в gulpfile.js
- Вопрос задан 17 сент.
- 215 просмотров
Почему у вас написано type=module а вы используете require ? Определитесь.
Что за команда gulp-imagemin ?
Для оптимизации картинок вы должны выполнить команду gulp images
Norum, если делаете через require, то уберите из package.json type=module
type=module указывает среде nodejs на то, что файлы написаны по современным стандартам (es6 modules), а не как раньше было (commonjs)
Источник
И снова.. Почему Gulp 4 не работает?
Подскажите, пожалуйста. Почему это не работает?
Может кто-то взять к себе и протестировать?
https://github.com/KononovD/kononovD.github.io/tre.
тут сам gulpfile.js и package.json
Ошибка следующая
[22:37:09] Using gulpfile
\Desktop\testGulp\gulpfile.js
[22:37:09] Starting ‘default’.
[22:37:09] Starting ‘build’.
[22:37:09] Starting ‘clean:build’.
[22:37:09] Finished ‘clean:build’ after 2.01 ms
[22:37:09] Starting ‘html:build’.
[22:37:09] Finished ‘html:build’ after 13 ms
[22:37:09] Starting ‘scss:build’.
[22:37:09] ‘scss:build’ errored after 4.53 ms
[22:37:09] TypeError: dest.on is not a function
at DestroyableTransform.Readable.pipe (C:\Users\я\Desktop\testGulp\node_modules\readable-stream\lib\_stream_readable.js:564:8)
at DestroyableTransform.pipe2 (C:\Users\я\Desktop\testGulp\node_modules\gulp-plumber\index.js:72:14)
at C:\Users\я\Desktop\testGulp\gulpfile.js:82:10
at taskWrapper (C:\Users\я\Desktop\testGulp\node_modules\undertaker\lib\set-task.js:13:15)
at bound (domain.js:395:14)
at runBound (domain.js:408:12)
at asyncRunner (C:\Users\я\Desktop\testGulp\node_modules\async-done\index.js:55:18)
at process._tickCallback (internal/process/next_tick.js:61:11)
[22:37:09] ‘build’ errored after 23 ms
[22:37:09] ‘default’ errored after 26 ms
Мне почему-то кажется, что все дело в автопрефиксере..
И еще может кто объяснить в чем разница 2х наблюдателей? Они в самом низу, первый (закомментированный) не просит модуль «gulp-warch», а 2й просит.. В чем разница?
Спасибо.
Источник
Ошибка при установке gulp-imagemin. Кто-нибудь может помочь решить проблему?
> spawn-sync@1.0.11 postinstall C:\HTML\gulp\node_modules\gulp-imagemin\node_modules\imagemin\node_modules\imagemin-gifsicle\node_modules\gifsicle\node_modules\bin-wrapper\node_modules\bin-check\node_modules\spawn-sync
> node postinstall
/
module.js:340
throw err;
^
Error: Cannot find module ‘C:\postinstall’
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:906:3
—
> spawn-sync@1.0.11 postinstall C:\HTML\gulp\node_modules\gulp-imagemin\node_modules\imagemin\node_modules\imagemin-optipng\node_modules\optipng-bin\node_modules\bin-wrapper\node_modules\bin-check\node_modules\spawn-sync
> node postinstall
|
module.js:340
throw err;
^
Error: Cannot find module ‘C:\postinstall’
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:906:3
/
> spawn-sync@1.0.11 postinstall C:\HTML\gulp\node_modules\gulp-imagemin\node_modules\imagemin\node_modules\imagemin-jpegtran\node_modules\jpegtran-bin\node_modules\bin-wrapper\node_modules\bin-check\node_modules\spawn-sync
> node postinstall
Источник
Почему не работает gulp-imagemin?
Пробую установить gulp-imagemin, но при запуске команды gulp-imagemin в терминале выдает ошибку:
ReferenceError: require is not defined in ES module scope, you can use import instead
This file is being treated as an ES module because it has a ‘.js’ file extension and ‘C:\Users\tempe\Desktop\gulp-start\package.json’ contains «type»: «module». To treat it as a CommonJS script, rename it to use the
‘.cjs’ file extension. Я так и не понял какой файл надо переименовать с расширением cjs. Помогите разобраться, как сделать импорт изображений из одной папки, сжать изображение и перенести их в другую папку. Пробовал через импорт, как написано в документации, но не получилось.
Вот что у меня написано в gulpfile.js
- Вопрос задан 17 сент.
- 215 просмотров
Почему у вас написано type=module а вы используете require ? Определитесь.
Что за команда gulp-imagemin ?
Для оптимизации картинок вы должны выполнить команду gulp images
Norum, если делаете через require, то уберите из package.json type=module
type=module указывает среде nodejs на то, что файлы написаны по современным стандартам (es6 modules), а не как раньше было (commonjs)
Источник