🍼
React UseStateのリスト追加でハマった
そもそもUseStateって何
関数コンポーネントでstateを管理するためのReactのフック(Hooks)
Stateは本来クラスコンポーネントで管理されていた。
Hooks(フック)とは
クラスを使うことなく、stateを扱ったり、ライフサイクルに応じた処理を実装する機能
##今回ハマった内容
Reactでリストの値が追加できなかった
const [messages, setMessages] = useState([])
const addMessage = () => {
setMessages([...messages, text:'hello' , sender:'user'])
}
だと、リストに値が追加されずに上書きされてしまっていたため
preveを使い前の状態のまま値を追加する
setMessages((prevMessages) => ([...prevMessages, { text: inputValue, sender: 'user' }]));
Discussion
失礼します。
どちらでも動くので、どちらでも良いです。前者でないと間違いという訳ではありません。
記事に記載されているコードをそのまま信じると、単純に JS のオブジェクトの構文が誤っているからではありませんか?
すみません、記述ミスでした。
実行環境では、しっかりとこちらになっていました。
コメント頂きありがとうございます。