vue-父組件傳值props(對象)給子組件

props傳值你們都很清楚,html

 

###prps 能夠傳一個數字數組

###prps 能夠傳一個布爾值異步

###prps 能夠傳一個數組this

###prps 能夠傳一個對象spa

###prps 能夠傳一個對象的全部屬性htm

 

今天就遇到了 在傳對象時,所須要的問題.對象

 

問題:it

1.從父組件傳來了object

props['info']  // info 就是一個數組,每一項就是一個對象方法

其中我須要用到info[0].id //這個值

 

因而 我在mounted:{

  this.id= this,info[0].id        //////////////報錯,報unfinded

}

並且打印 info 也是 打印不出來 

緣由則是 異步更新值的問題 

就是說開始的時候有個默認值,這個默認值會被異步數據改變,好比說這個異步數據返回的object,若是你用props的方式去傳遞這個數據,其實第一次傳遞的空值,第二次傳遞的是更新後的值,因此就出現報未找到的錯誤.

解決方法:
既然說第一次是空值,它會這樣處理''.items[0],那麼咱們是否是能夠在html判斷這個是否是空(或者在computed或者是watch來判斷是否爲默認值)
 
個人解決方法就是在watch,監聽這個值 
let id = this,info && this.info[0] && this.info[0].id
 
只有等 這個id有值時 纔會進行賦值 !!!!!!!!!! 
 
查了很久,可是還好找到了緣由
相關文章
相關標籤/搜索