当前位置: 首页 > news >正文

0:0 error Parsing error: Cannot read properties of undefined (reading ‘map‘)

遇到一个报错信息如下:

当前组件的第一行爆红提示以及保存后,终端提示为:

0:0  error  Parsing error: Cannot read properties of undefined (reading 'map')

使用该组件的位置提示:

8:29  error  Parse errors in imported module '../xxx': Cannot read properties of undefined (reading 'map') (undefined:undefined)  import/no-named-as-default
8:29  error  Parse errors in imported module '../xxx': Cannot read properties of undefined (reading 'map') (undefined:undefined)  import/no-named-as-default-member

第一反应是检查代码内部所有 .map 之前的数据是否为 undefined。

但发现都做了兜底处理(类似于):

{(companyDataList.value || [])?.map((company) => (<ElOptionkey={company.companyGuid}value={company.companyGuid}label={company.companyName}/>
))}

然后考虑临时“绕过”提示,只是想“跳过这个文件的所有 ESLint 检查”,可以在文件最顶部加:

/* eslint-disable */

注意这只能跳过 ESLint 规则错误,对 Parsing error 无效。

如果用 VSCode,Parsing error 可能是编辑器的 TypeScript 或 ESLint 插件报的,可以尝试重启编辑器,清理缓存。

但发现,该注释只能解决使用组件的位置不报错,但是组件内部第一行的错误提示还在。

由此,有应该临时解决方法(⚠️ 不推荐在生产中使用,仅用于排查问题)。

Parsing error 这种错误本质是 ESLint 在解析代码(parser 阶段)就失败了,所以普通的 // eslint-disable 注释是无效的,根本没机会生效。

如果想“全局忽略”这类 Parsing error,唯一可行的做法就是:在 ESLint 配置里,针对报错的文件路径,把 ESLint 关闭(忽略)掉。

在 .eslintrc.js 内部添加:

module.exports = {// 其他配置...ignorePatterns: ['src/path/to/xxx.jsx', // 忽略这个文件不让 eslint 解析// 也可以用通配符忽略一大类文件,比如:// 'src/**/*.jsx'],
};

ignorePatterns 可以完全不让 ESLint 解析这个文件,也就是彻底绕过这个错误。缺点是这个文件就完全不检查了。

经历了一系列的研究,包括升级包版本,使用不同的编译器,结果万万想不到,影响点居然是类型值 [string, string] 不能识别:

const add = (dateRange: [string, string]) => {const [startDate, endDate] = dateRange || [];if (!startDate || !endDate) return;// ...dateDay.value = [];
};

更改如下,可以顺利运行!

const add = (dateRange: string[]) => {const [startDate, endDate] = dateRange || [];if (!startDate || !endDate) return;// ...dateDay.value = [];
};

⚠️ 注意:以上方法仅作为思路参考,并不适用于所有项目。由于我这边项目使用的是公司自研的编译器,实际情况可能有所差异。

大哭(꒦_꒦) 

相关文章:

  • Rust 学习笔记:通过异步实现并发
  • C语言学习20250611
  • 亮数据抓取浏览器,亚马逊数据采集实战
  • Flask 报错修复实战:send_file() got an unexpected keyword argument ‘etag‘
  • vite原理
  • MFC 第1章:适配 WIndows 编程的软件界面调整
  • 创建和运行线程
  • 训练过程中的 Loss ?
  • 红队手法:从web漏洞到ssh横向移动 实战方案
  • 达梦数据库dsc集群+异步主备
  • Android11三网共存
  • el-table-v2修改表头、单元格、表格整体的宽度、高度样式
  • 用 IRify 深入探索 WebShell 中的 Source/Sink 挖掘
  • C# ConcurrentDictionary 中获取指定范围的元素
  • 解密Spring Boot:深入理解条件装配与条件注解
  • 教师端用户操作手册
  • 使用 C/C++、OpenCV 和 Libevent 构建联网人脸识别考勤系统 [特殊字符]‍[特殊字符]
  • docker和docker-compose的版本对应关系怎么看?
  • 顶顶通电话机器人功能列表
  • Spring Security是如何完成身份认证的?
  • 顺德大良网站建设开发/刚刚发生 北京严重发生
  • 网站加水印/seo标题优化裤子关键词
  • 网站建设管理概述/网站收录查询
  • 做招聘网站需要哪些手续/真正免费的网站建站
  • 给别人做网站赚钱/优云优客百度推广效果怎么样
  • c语言新手入门代码/优化好搜移动端关键词快速排名