报错:"TypeError: Cannot read property '0' of undefined"的原因


晚上写外卖项目的时候报了这个错误:

 

 

 首先要明白,为什么会报这个错误呢?

    报没有 0 这个,说明没有supports,但是明明就有啊,在vuex的info对象身上,那就说明是info这个时候没有解析出来,是没有info。

    是因为这个时候info没有解析处来,但是前面明明就可以获取到其他的 info.name 之类的,为什么这里 info.supports[0].type就会有这个问题呢?

      一级的表达式 info ,二级表达式 info.name,三级级表达式 info.supports[0]容易出问题,因为info.supports开始就是undefined,没有解析,继续去取当然会报错。

解决错误的办法是:

 

 

    给这个块 ,添加 v-if ,由info.supports是否解析处来,决定它是否显示,那为什么不用v-show呢?因为v-show的隐藏,结构位置还在,v-if是结构位置全部取消没有了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM