vue渲染数据出现TypeError: Cannot read properties of undefined (reading ‘key‘)

项目场景:

vue + view-design 4.5.0

问题描述

二次查询数据渲染出现TypeError: Cannot read properties of undefined (reading 'key')


原因分析:

出现渲染错误的原因有多种,这里只分享我遇到的情况,如果正好对号入座,那么可以节省大量排查时间,如果不是这个原因也可以带来思路,因为这个错误基本上是因为不符合渲染规则造成的。

我这里是因为使用了iview的table,其中某一列需要树形控制展开,使用了tree的功能(组件功能链接:https://www.iviewui.com/view-ui-plus/component/form/table#tree),问题就出在rowKey上,我这里的rowKey字段是sn,然后children的数据因为和父级行数据是同一个数据的不同形式,所以也有相同的sn字段,这就造成了重复的rowKey,导致二次渲染数据时发生异常。


解决方案:

children的数据如果和父级数据有相同的rowKey字段,需要避开,如果children需要使用该字段可以使用其他字段来替代,如果不使用的话children数据就不要返回该字段

相关推荐
10年前端老司机9 分钟前
React 受控组件和非受控组件区别和使用场景
前端·javascript·react.js
夏晚星9 分钟前
vue实现微信聊天emoji表情
前端·javascript
極光未晚12 分钟前
TypeScript在前端项目中的那些事儿:不止于类型的守护者
前端·javascript·typescript
ze_juejin13 分钟前
Vue3 + Vite + Ant Design Vue + Axios + Pinia 脚手架搭建
前端·vue.js
Rrvive14 分钟前
原型与原型链到底是什么?
javascript
極光未晚1 小时前
JavaScript BOM 对象:浏览器的隐形控制塔
前端·javascript·源码
天涯学馆1 小时前
网站秒变 App!手把手教你搞定 PWA
前端·javascript·面试
用户9272472502191 小时前
PHP + CSS + JS 数据采集与展示系统
javascript
小样还想跑2 小时前
axios无感刷新token
前端·javascript·vue.js
字节跳跃者2 小时前
为什么Java已经不推荐使用Stack了?
javascript·后端