2016-09-22 34 views
0

http://codepen.io/adamchenwei/pen/yagLLZ?editors=0010如何更改子組件的某一部分的所有國家reactjs

我有FormatModule組分,它是深深的兩級從RepeatModule。我想,只要的onClick是在FormatModule觸發onClick={this.props.changeFormat.bind(this)},它會改變所有的雕像爲所有的islamicislamic: '09999999',,或取其接到changeFormat功能通過RepeatModule

我聽說這是操縱狀態的唯一途徑內當它嵌套在組件列表中時大量使用。

現在,當我點擊onClick={this.props.changeFormat的實現位置時,值不會響應更改。我想知道我錯過了哪個地方的鏈接?由於changeFormat是一個從頂級父組件傳遞到FormatModule的函數,除非它沒有辦法做到這一點?

注:我需要的是不涉及終極版或磁通

回答

1

與同事的幫助下,解決方案,其已經定格在我的代碼筆:http://codepen.io/adamchenwei/pen/yagLLZ?editors=0010

所以問題是:

  1. bind(this)在錯誤的範圍內。只應在RepeatModule
  2. newFormat狀態應該遵循原始格式的格式(在這種情況下,它是一個array內綁定所以newFormat應該是一個 array以及!

享受!

(希望誰投票否決我的問題回來,學習他們的東西之前先把其他人放下,尤其是沒有任何理由)

相關問題