Tell us what’s happening:
Describe your issue in detail here.
I understood every single line of this code except the message mapping (starting from line 31 to line 37) can anyone help me understand it, please?
**Your code so far**
class DisplayMessages extends React.Component {
constructor(props) {
super(props);
this.state = {
input: '',
messages: []
}
}
// Add handleChange() and submitMessage() methods here
handleChange(event) {
this.setState(({
input: event.target.value,
messages: this.state.messages,
}))
};
submitMessages() {
this.setState(({
input: this.state.input,
messages: [...this.state.messages, this.state.input],
}))
}
render() {
return (
<div>
<h2>Type in a new Message:</h2>
{ /* Render an input, button, and ul below this line */ }
<input onChange={this.handleChange.bind(this)} value={this.state.input} />
<button onClick={this.submitMessages.bind(this)}>Submit!</button>
<ul>
{
this.state.messages.map(
(x, i) => {
return <li key={i}>{x}</li>
}
)
}
</ul>
{ /* Change code above this line */ }
</div>
);
}
};
**Your browser information:**
User Agent is: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36
Challenge: Manage State Locally First
Link to the challenge: