vue中的报错Cannot read properties of undefined,但可以正常渲染出来数据

Error in render: "TypeError: Cannot read properties of undefined (reading 'length')"
image.png

问题来自于这个报错

image.png

写了一个数据返回为状态的判断,根绝listPage是否为空数组进行 '空状态'效果的展示

image.png

效果在页面上可以根据数据有无正常的实现,但是控制台在返回数据为空时,一直在报读不到 length,但是界面上却可以正常的进行渲染出来,

难道这是接口数据的速度慢?但是也不慢啊为什莫才会这种错误,想请教一个这种问题应该怎么解决?又是怎么产生的这种报错?请大神给指点一下

阅读 22.4k
3 个回答

应该是初始值有问题,改成下面的即可

data(){
 return {
    resultData:{
        listPage:[]
    }
 }
}

你的 listPage 不是 objDatakey 吗,为什么是 this.resultData.listPage 呢?应该是objData.listPage,试试 this.objData.listPage.length

错误提示的内容是类型错误undefined没有length属性.
应该是返回数据为空时 objData.listPage = undefined, undefined是没有length属性的, 所以报错.
v-if = "!objData.listPage || objData.listPage.length === 0"

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题