問題描述: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:''}...]
添加回答
舉報
0/150
提交
取消