前提・実現したいこと
Reactで配列stateの更新ができません。
更新する時はpushなど使わずスプレッド構文を使っています。
該当のソースコード
具体的には以下のようなソースです。
現状onClickによってaddItem呼び出しはできていますがItemListにItemが追加されない状況です。エラー表示もされません
javascript
1function Home() { 2 const [ItemList, addItemList] = useState( 3 [Item(1)] 4 ); 5 6 function Item(keyI) { 7 return ( 8 <div key={keyI} onClick={addItem}>a{keyI}</div> 9 ); 10 } 11 12 function addItem() { 13 const i = ItemList.length + 1; 14 const newItemList = [ 15 ...ItemList, 16 Item(i), 17 ] 18 addItemList(newItemLIst); 19 } 20 21 return ( 22 <>{ItemList}</>; 23 ) 24} 25 26export default Home; 27
試したこと
- 別でボタンを配置してonClickにaddItemを設定。ボタンクリックで正常に追加されることは確認しました
質問事項
- Reactで上記のようなプログラムは可能でしょうか。自分自身をクリックして自分自身を増やしていくイメージ
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/07/23 06:34