【问题解决】使用gulp压缩时报错Error [ERR_REQUIRE_ESM]: Must use import to load ES Module

最近升级了一下gulp,发现再次压缩时报错

原因是gulp-imagemin 8.0.0只支持ES6语法,而我用的是CommonJS的语法,在引入模块时使用的是require,所以在使用gulp-imagemin的时候就出错了

解决方法:

SyntaxError: Cannot use import statement outside a module

STEP1: 将gulpfile.js改为gulpfile.mjs,在package.json中加入"type": "module",这样可以让gulpfile按ES6的语法解析。

STEP2: 将gulpfile中所有的的require按ES6语法替换为import,如将const gulp = require('gulp'),替换为import gulp from 'gulp'

 

希望我的方法对你有帮助。

posted @ 2022-05-03 13:55  Texley  阅读(4376)  评论(0编辑  收藏  举报