首页 新闻 会员 周边 捐助

[Vue warn]: Error in render: "TypeError: Cannot read property 'name' of undefined"

0
悬赏园豆:50 [已关闭问题] 解决于 2021-02-22 15:03

前台在created()方法中发送axios请求获取后台数据

data的前期数据初始化为

模板中

后台返回的数据正常

但是页面无法渲染数据报错

求大佬们帮忙解答

python_zzy的主页 python_zzy | 初学一级 | 园豆:74
提问于:2021-02-20 16:17
< >
分享
其他回答(1)
0

集合做个非空判断。
vue是异步请求。页面渲染刚开始的时候还没有拿到这个值,所以会报错。在vue中对该值进行if判断(v-if = " ")。当该对象有值的时候再进行渲染。
参考:freesion.com/article/80191021817/

收获园豆:10
Ctrl` | 园豆:3317 (老鸟四级) | 2021-02-20 16:23

具体应该在哪加判断?

支持(0) 反对(0) python_zzy | 园豆:74 (初学一级) | 2021-02-20 16:31

@python_zzy: 一种是course.name单独加。或者是course集合都行呀

支持(0) 反对(0) Ctrl` | 园豆:3317 (老鸟四级) | 2021-02-20 16:39

@Ctrl`: 我在course.name的父标签加了 不行

支持(0) 反对(0) python_zzy | 园豆:74 (初学一级) | 2021-02-20 16:48

@Ctrl`: 而且我昨天直接这种方式也是可以渲染数据的,没有做任何改动今天就不行了

支持(0) 反对(0) python_zzy | 园豆:74 (初学一级) | 2021-02-20 16:53
0

v-for="course in course_list" :key="course.name" 改成 v-for="(course,index) of course_list" :key="index"
或者试试将 return下的course_list:[] 改成course_list:[{name:''}]
或者在v-for的外层div上加 v-if=“course_list”
可以试试看能否解决

收获园豆:10
___mouM | 园豆:96 (初学一级) | 2021-02-22 08:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册