为了账号安全,请及时绑定邮箱和手机立即绑定

vue获取接口数据数组数据后,利用数组下标赋值问题

vue获取接口数据数组数据后,利用数组下标赋值问题

婷婷同学_ 2018-07-22 15:18:09
问题描述:data里面定义变量data() {      return {         // 1楼        floor1:[]         }        }created里面获取数据后赋值this.axios.get('https://easy-mock.com/mock/5b559f6f4ff1f856c44c67ec/index')       .then(response=> {         console.log(response);         if(response.status==200){           //楼层1数据             this.floor1 = response.data.data.floor1             })html里面 采用数组下标赋值渲染,页面能正常把图片显示出来,但报错了     <div class="floor-anomaly">        <div class="floor-one"><img :src="floor1[0].image" width="100%" /></div>     </div>这是报错信息,这是为什么,不能用下标取值嘛
查看完整描述

2 回答

?
慕标5832272

TA贡献1966条经验 获得超4个赞

可以啊,渲染速度的问题。
刚进来的时候html先渲染,floor1=[],floor1[0].image就是undefined啊,针对这一个解决,你可以这样

<div class="floor-anomaly">
        <div class="floor-one" v-if="floor1[0]"><img :src="floor1[0].image" width="100%" /></div>
    </div>

要是这种取值比较多的话,建议在data里面去定义这些空字段,例如

floor1:[{image:'',contenf:''}...]


查看完整回答
反对 回复 2018-07-29
  • 2 回答
  • 0 关注
  • 6193 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信