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后运行还是出错。

相关推荐
源代码杀手4 小时前
从 0 到 1 重新部署新的Node.js 项目到 Cloudflare Workers:避坑指南 + 完整流程
node.js
wgc2k4 小时前
Nest.js基础-2、Node.js的版本管理和包管理
开发语言·javascript·node.js
QT 小鲜肉5 小时前
【Linux命令大全】003.文档编辑之col命令(实操篇)
linux·运维·服务器·前端·chrome
深圳佛手10 小时前
不用智能体开发框架,如何调用工具?
前端·python
小夏卷编程10 小时前
ant-design-vue 1.x版本自定义可拖拽弹框
前端·javascript·vue.js
GIS之路11 小时前
GDAL 实现自定义数据坐标系
前端
0思必得011 小时前
[Web自动化] Requests模块响应的内容
运维·前端·python·自动化·html·web自动化
醉逍遥neo12 小时前
react项目热更新问题
前端·react·热更新·umi·umi max
专注前端30年12 小时前
Vue3 watchEffect详解:核心用法与原理剖析
前端·javascript·vue.js
hwt107035989812 小时前
Vue项目,解决Node依赖错误问题
前端·javascript·vue.js