天天看點

vue中報錯 [Vue warn]: Error in render: "TypeError: Cannot read property 'avatar' of undefined"

vue中報錯 [Vue warn]: Error in render: "TypeError: Cannot read property 'avatar' of undefined",如下圖:

vue中報錯 [Vue warn]: Error in render: "TypeError: Cannot read property 'avatar' of undefined"

這時候你就要檢查下你的項目中template模闆中是否有用到了沒有定義的資料。

舉個例子:

在我的template模闆中有這麼一段dom

<img :src="dataDetail.ask.avatar" />
           

然後,我的data是這樣的

data () {
  return {
    dataDetail: {}
  }
},
           

那麼,你會發現你的data中隻有一個空的dataDetail對象,而在頁面中的資料使用是dataDetail.ask.avatar

雖然dataDetail中的資料是從伺服器請求回來的,而且裡面也存在ask,因為是異步請求,然而在頁面初步渲染的時候是擷取不到ask的 

this.dataDetail = res.data
           
vue中報錯 [Vue warn]: Error in render: "TypeError: Cannot read property 'avatar' of undefined"

解決方法:

data () {
  return {
    dataDetail: {
      ask: {}
    }
  }
},