javascript - vue中使用prop傳遞數(shù)據(jù)問題
問題描述
在vue2.0的文檔中,關于prop的介紹,有些不明白。既然是通過prop獲取父組件的數(shù)據(jù)的,但是使用之后,為什么在子組件中又重新賦值呢?并沒有拿到父組件的值啊?
為什么需要給child組件再附加一個類似屬性的message并賦值呢?不是應該直接寫<child></child>之后,就自動顯示出<span>父組件message值</span>,不應該這樣顯示的嗎?
請問這個應該怎么理解啊?為什么會是這樣的呢?prop應該如何使用呢?
問題解答
回答1:可以這么理解。
父組件傳值給child組件。<child message=’hello’></child>子組件中有兩個地方用到了message,props區(qū)塊是注冊可能用到的變量。比如:<child message=’hello’ dep=’ssd’></child>對應的props就應該是[’message’,’dep’]template中{{message}}才是真正的調(diào)用變量。按你說的<child></child> 直接顯示,應該是這樣template:’<span>hello</span> :)
為什么要寫成這樣的結構?是考慮到組件的復用性,僅改變傳入的值就可以實現(xiàn)不同的功能。
回答2:在父組件作用域使用 v-bind:props=’data’的形式把父組件數(shù)據(jù)傳遞給子組件
回答3:是不是可以理解為子組件同時也可以修改父組件傳過來的值呢。
相關文章:
1. sql語句 - mysql中關聯(lián)表查詢問題2. css - chrome下a標簽嵌套img 顯示會多個小箭頭?3. javascript - [js]為什么畫布里不出現(xiàn)圖片呢?在線等4. javascript - iframe 為什么加載網(wǎng)頁的時候滾動條這樣顯示?5. javascript - 如何將一個div始終固定在某個位置;無論屏幕和分辨率怎么變化;div位置始終不變6. javascript - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風格檢查怎么辦。。。7. javascript - 有什么比較好的網(wǎng)頁版shell前端組件?8. html - vue項目中用到了elementUI問題9. mysql updtae追加數(shù)據(jù)sql語句10. javascript - 原生canvas中如何獲取到觸摸事件的canvas內(nèi)坐標?
