vue TypeError: Cannot read property 'length' of undefined 问题解决思路

时间:2022-02-13 22:02:22

vue TypeError: Cannot read property 'length' of undefined 问题解决思路

上图中是我在接手一个项目的时候,出现的一个关于数组的 bug,但是从上图来看,其实报错是不清楚的,只能从报错信息上看出来是 /src/page/waybill/waybill_form.vue 这个 vue 页面出现的报错。

如果遇到这种情况,很多人会很难下手,也不知道怎么处理。

下面是我的处理这种模糊问题的处理思路。(注释排除法)

一、排除 js 内的 所有的xxx.length 的 变量是否是数组类型。

二、排除 html 代码上是否引用过xxx.length 。

如果以上注释了排除还是报错的话。

还需要关注的就是 v-for ,因为代码再执行到   v-for="(item,index) in arry"   这里时,如果arry不是个数组就会导致报错 xxxx.length 找不到,因为渲染的时候会内部运行 for 循环就会用到 xxx.length。这个是不能很快直观的能处理到的隐藏问题。

以上就是我处理这种报错模糊,并且项目不是自己一手写的,上一个开发人又不在的时候,的处理问题的一个思路