npm run build 时出现语法报错 Module parse failed: Unexpected token

错误原因

出现这个错误一般是你使用了或者引用的包里出现了ES6的语法,但是你的webpack可能是4.x或者更低版本的,

这时候单靠webpack本身无法识别ES6的语法,但是升级webpack到5可能会与现有的代码产生兼容性问题,因此就需要引入babel插件,将ES6的语法进行转换。

常见ES6语法有 ??、??=、?.、?: 等等。

复制代码
Module parse failed: Unexpected token (46:45)
You may need an appropriate loader to handle this file type,
 currently no loaders are configured to process this file

引入插件

执行一下三个命令,注意如果出错,请去npm官网找到最高的兼容webpack4的版本安装即可。

复制代码
npm install @babel/core
npm install babel-loader@8.3.0
npm install @babel/preset-env

配置babel-loader

在webpack.base.conf.js中添加如下内容

复制代码
{
  test: /\.js$/,
     use: {
         loader: 'babel-loader',
         options: {
             // 使用 Babel 中的 @babel/preset-env 预设
             presets: [
                 '@babel/preset-env',
             ]
         }
     }
 }

结果

此时重新 npm run build 应该就好了,但是请注意,为了保险点,最好手动把之前的dist目录删除,避免缓存问题导致build后运行还是出错。

相关推荐
inksci19 分钟前
发布Ai生成的html markdown 推荐
前端·javascript·html
在西安放羊的牛油果23 分钟前
WebP 图片优化方案详解
运维·前端·架构
coding漫漫长路24 分钟前
签名PDF一压就失效,接压缩需求前先查这5件事
前端
Lank_M24 分钟前
PDF签完名还能改什么?会签能过,压缩不行
前端
补码缩写29 分钟前
压缩前查PDF签名,字节搜索会漏掉对象流
前端
星光不问赶路人29 分钟前
Vue 项目类型检查:深入理解 vue-tsc --build
前端·vue.js
修炼的dance31 分钟前
压完的PDF验签不报错,是因为签名被删了
前端
ModStart33 分钟前
想玩 AI 翻唱?SeedVC 模型 + AIGCPanel 上手
前端
ModStart34 分钟前
ProcHub v0.7.0 命令行工具上线,进程、配置与 WSL 都能在终端管理
前端