Parsing error Unexpected token错误解决方案

在使用webpack进行模块动态导入时遇到eslint解析错误,禁用eslint后打包正常。错误源于eslint对es6语法的支持问题。解决方案包括安装babel-eslint插件,并在package.json中配置eslintConfig,将parser设置为babel-eslint,从而确保webpack能正确处理es6的import语法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:
import动态导入,将js文件单独打包时,webpack打包错误

import('./test')
  .then((res) => {
    // 文件加载成功
    console.log(res.mul(2, 5));
  })
  .catch(() => {
    console.log('文件加载失败');
  });

构建出错:

ERROR in ./src/js/index.js
Module Error (from ../../node_modules/_eslint-loader@4.0.2@eslint-loader/dist/cjs.js):

D:projectgitOwnwebpack23-code splitdemo3srcjsindex.js
  19:7  error  Parsing error: Unexpected token (

? 1 problem (1 error, 0 warnings)

问题分析:
禁用eslint,webpack打包正常,Parsing error 是eslint解析错误。

解决方案:

1.下载 babel-eslint 插件(Npm下载会出错)
cnpm install babel-eslint --save

2.在package.json中配置 eslintConfig 属性

"eslintConfig": {
 "extends": "airbnb-base",
 "parser": "babel-eslint"
 }
"Parsing error: Unexpected token }"是一个常见的JavaScript错误,它通常意味着你在代码中使用了不正确的语法。这个错误通常出现在你试图解析一个对象或数组,但编译器在某个地方遇到了一个不期望的右大括号 "}"。 这个错误可能的原因有几个: 1. 对象或数组的声明可能没有正确结束。例如,你可能忘记了在对象或数组的末尾添加一个左大括号 "{" 或一对完整的右大括号 "}"。 2. 你可能正在尝试访问一个不存在的属性或元素。 3. 你可能试图访问的对象或数组的类型与你预期的不同。例如,你可能尝试使用一个对象字面量作为数组来使用,这会导致解析错误。 解决这个问题的方法取决于具体的情况。你需要检查你的代码,确保所有的对象和数组都正确地结束,并且你访问的属性或元素确实存在。如果你不确定如何修复这个问题,你可以提供一些具体的代码片段,我会尽力帮助你。 例如,如果你的代码看起来像这样: ```javascript let myObject = { name: "John", age: 30, }; console.log(myObject.age); // Unexpected token } ``` 你需要确保你的对象已经正确地结束,并且你访问的属性确实存在于该对象中。正确的代码应该是这样的: ```javascript let myObject = { name: "John", age: 30, }; console.log(myObject.age); // 输出:30 ``` 或者,如果你的代码看起来像这样: ```javascript let myArray = [1, 2, 3]; console.log(myArray[3]); // Unexpected token } ``` 你需要确保你的数组已经正确地结束,并且你访问的索引值在数组的长度范围内。正确的代码应该是这样的: ```javascript let myArray = [1, 2, 3]; // 注意这里没有多余的右大括号 } console.log(myArray[3]); // 输出:undefined,因为数组的长度是3,索引4是不存在的 ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值