備忘録
Reactの勉強をはじめて2時間詰まったところ↓
reactのstateに配列を設定した時、インデックスを利用して一部を変更したい。
解決策
スライスで配列をコピーしてからコピーの中身を変更して、それをsetStateする
constructor(props) {
super(props);
this.state = {
humans: ["あ", "い", "う"]
}
}
change(i) {
const humans_copy = this.state.humans.slice();
humans_copy[i] = "変更"
this.setState({humans: humans_copy})
}
}
結局チュートリアルでした。